Improve Configuration API

Rather than using `Hash` methods, make `Peril::Config` a proper object with accessors, raising exceptions on required keys, that sort of thing.