Launchpad ingestion to archive endpoint

Wire up launchpad ingestion to charmstore filling out new api/models.
For a single value error, there's no particular need to make a type - just use
a value.

e.g.

    var unauthorizedError = errgo.New("invalid charm store credentials")

Then you can test the error by just checking equality (using errgo.Cause)