snapshots: move snapshot directory (v3)

Originally we kept snapshots under /var/lib/lxcsnaps.  If a
separate btrfs is mounted at /var/lib/lxc, then we can't
make btrfs snapshots under /var/lib/lxcsnaps.

This patch moves the default directory to /var/lib/lxc/c/snaps.
If /var/lib/lxcsnaps already exists, then use that.

If we are deleting a container which has snapshots, we currently
will delete the container itself and its rootfs, but not its
snapshots.  This could be confusing for the user, and there is
no option to c->destroy() to ask for different behavior.  So
currently a user would have to delete all snapshots first, then
delete the container.  Ideas for better handling this would be
welcome, but we don't want to change the current api, so while
adding a new c->destroy_full() would be ok, adding a flags
argument to c->destroy(c, flags) is not.

XXX  The issue with this patch is that we indicate a locked
container using the file '/run/lock/lxc/$lxcpath/$name'.  Now
if we are snapshotting y1, then /run/lock/lxc/var/lib/lxc/y1 exists
(as a file) so we cannot create
/run/lock/lxc/var/lib/lxc/y1/snaps/snap0 as the lockfile for the
new snapshot.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>