Fixes re-creating volume on (re)start

When a container is restarted all the volume configs are parsed again.
Even if the volume was already handled in a previous start it was still
calling "FindOrCreateVolume" on the volume repo causing a new volume to
be created.

This wasn't being detected because as part of the mount initialization
it checks to see if the the _mount_ was already initialized, but this
happens after the parsing of the configs.
So a check is added during parsing to skip a volume which was already
created for that container.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Restore volume refs after daemon restart

Volume refs were not being restored on daemon restart.
This made it possible to remove a volume being used by other containers
after a daemon restart.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Add volume ls/inspect/rm commands

Also adds the naming to volumes.
When a volume is created using "docker run -v" a name is automatically
generated.
This does not add any other way to create a volume, that would be done
by a separate command.

Implements Proposal https://github.com/docker/docker/issues/8363

Signed-off-by: Brian Goff <cpuguy83@gmail.com>