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.

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.

I made the change because it simplified the logic - it means the caller doesn't need to bother about explicitly removing the temporary file because it's in the temporary directory which is removed as a matter of course. It also makes it slightly tidier when the charmload process is interrupted - there's only one kind of thing that's left behind in /tmp.