Expanded Palette System

added preference functionality, added multi-palette support, + other
minor changes

(Note - needs testing!)