Implement the debugstatus package.

Abstract out some helper functions to be used in the charm store and similar services.

(Review request: http://reviews.vapour.ws/r/628/)
Given that this is the debugstatus package, how about calling this just "CheckResult" ? We could also rename the StatusCheckerFunc to CheckFunc and make it return CheckResult.

Perhaps also, the various checker functions could lose the "Check" prefix, so a  call to check would look something like:

    checkers := map[string] debugstatus.CheckFunc{
         "start time": debugstatus.StartTime,
         "connection: debugstatus.Connection(session),
         "mongo collections": debugstatus.MongoCollections(collections),
    }