charmload: some refactoring to address review comments

We add the capability for charmload to take parameters from the same
config file that charmd uses, splitting the config reading code into a separate
package to enable that.

We make the temp file for the archive inside the existing temp directory
for a slightly simplification of the code.

Various other changes as suggested in review.

Some tests will arrive in the next PR - for now, I've done
some verification on the command line.

We actually use the connection - we pass it into charmstore.NewServer (indirectly - a mgo.DB refers to the session it's derived from), so we do need to dial the mongo server here.