> Do you remember if there was a particular reason for the limited set of fields for each user originally?

I assume it was so that the table didn't get too wide.

> Why would you make $fields optional? How would the behavior change?

You're right, that doesn't make sense.