Config class
Reasons why this is useful:
- Removing a user-set config field will now refloat its defualt value
- It can be used like a container (~dict) plus the 'hasset(key)' method
- Default configs can be used via Config.default[key]
The way it works is simple, the user/config.py entries will be an overlay on top of Config.default. You can find out if an entry is not from the default config by using config.hasset(key).