internal/router: new package

This will be the basis for the new HTTP handling in the
charm store.
move all top level files to old
Merge pull request #14 from rogpeppe/003-router

internal/router: new package

This will be the basis for the new HTTP handling in the
charm store.
internal/...: create new structure for api
Merge pull request #15 from rogpeppe/004-restructure-1

move all top level files to old directory
sortimports
add charmstore server tests
Merge pull request #16 from rogpeppe/004-restructure-2

internal/...: create new structure for api
Move old -> _old and cmd -> _old.
Merge pull request #17 from bac/rename-old

Move old -> _old and cmd -> _old.
internal/charmstore: add Store.AddCharm method

This is just a stop-gap measure so that tests can add charms to
the database and implement endpoints before charm archive
upload is implemented.
add AddCharm duplicate check; remove ensureIndexes for now
charmstore: refactor external interface

We lose the version registration logic, and make versions
available to external packages without exposing
internal implementation details in the godoc.
add doc comments
fixes for review
Merge pull request #18 from rogpeppe/006-addcharm

internal/charmstore: add Store.AddCharm method
charmstore: fix doc comment for review
Merge branch 'v4' of https://github.com/juju/charmstore into 007-toplevel

Conflicts:
	server_test.go
Merge pull request #21 from rogpeppe/007-toplevel

charmstore: refactor external interface
Add metaCharmConfig.  Checkpoint.