My suggestion would be to convert the existing fields to 'custom fields' (and rename the system user fields). I never understood why they didn't do this when custom fields were first introduced, it would allow for so much more flexibility. They make use of their own APIs pretty much everywhere else, why not here?