Fixed issue with config not working, added GnomeShellColours ConfigWriter.
Moved general functions like output and enumChoices to generic.py. Added Shell objects to config, now work with setup()
Now _SHELL is automagically populated when running the program
Refactored way we read in shell (and soon to be the rest of the values) from the config files.
Couple of minor comments, added an any to make it easier to add new settings to read, and check for validity