Our iOS application gathers information about referrals. There are many pick-lists in the application which present several options. Some are single select, some are multi-select. The values change sometimes, some are added, some are deleted, sometimes there are typos. We'd like to use Salesforce to store the values these pick lists present. I've considered (a) storing a JSON array of each pick lists values in a record of a configuration custom object (b) using Salesforce's own pick lists and (c) Creating a One True Lookup Table. Coming from a normalized RDBMS background, none of these choices seem particularly appealing to me. Which is my best choice and are there any better ones? Thanks!
EDIT: I should note that eventually, many of these pick lists will likely require synchronization with external systems