Add ability to define User settings.

This commit will also make adding new settings in the future
much easier, without the need to reseed the db. Settings are
generally retreived in the order:
   UserSetting->GlobalSetting->DefaultSetting