Add some tests for basic usage and snapshotting

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Better error messages for bad argument counts

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
--config specifies config directory instead of file

Since we save various things in ~/.config/lxc, we should really allow users to
specify an alternat config directory instead of an alternate config file. This
commit changes --config to point to a directory, and puts everything (client
keys, server certs, and config file) in that directory.

Additionally, it updates the tests to reflect this new flag, and uses only a
"local" config directory for the tests, so it shouldn't pollute the config
directory for the user who is running the tests.

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>