Add VagrantError for missing archives

Raising a subclass of `VagrantError` prevents Vagrant from nuking the VM if
things go wrong.
Add a VagrantError for unreadable archives

Raise a subclass of `VagrantError` when a PE archive cannot be unpacked for
some reason. Currently, this only traps errors that occur from gunzip. Minitar
actually ends up causing a `NoMethodError` from nil if it attempts to process a
file that is not a tarball.
Merge pull request #34 from Sharpie/more-error-handling

More error handling