lppublish: new package, factored from cmd/charmload

This prepares the way for writing some tests for the publish
functionality, taken from the old charm store code.
Done as a separate PR so that code movement is
kept distinct from code changes.

There is no new logic in this branch - all the charmLoader methods
are identical.