Add basic HTTP authentication to archive POST/DELETE.

The credentials can be stored in the charmd configuration file.
Abstract out the authentication logic in a decorator.
Created a card for the DoRequest refactoring.
Not sure if I understand this. This is something we pass to an exposed API (NewServer).
Why do we want HandlerConfig to be internal?