Add Vagrant command plugin for snapshot management.

I see that there are a lot of different gems for this. I found myself
writing yet another for OpenStack where it makes sense to implement it
for the default provider (VirtualBox) and then let the other provider
plugins implement it if necessary.
Update commands to add restore option.

This also changes some of the terminology to follow the snapshot
commands in VirtualBox. I am not sure if its better to stick with 'take'
and 'destroy' or 'take' and 'delete', etc.