Zef config

Later should probably change so that the config hash is passed in via .new or inherited from parent classes, except for Zef::App which will try to first load the config file into the %config attr (so other modules can `use Zef`without having to worry about any plugins being loaded without their explicit request, whereas Zef::App can be used to allow the extra bells and whistles for an application to be applied)