Add Vagrantfile, improve CONTRIBUTING.md

This adds a Vagrantfile to support development and adds basic documentation for it in CONTRIBUTING.md.

I keep re-creating variants of this every time I work on this module, so I figure somebody else might benefit from it as well. It's not intended to showcase the module like some other project's vagrant setups are; it's purely intended as a development tool.

Provisioning would be somewhat faster using one of the vagrant boxes that includes puppet, but using the install script provides the latest version of puppet. The other reason for using that [install script](https://github.com/danieldreier/puppet-installer) is that it's distro-agnostic, so extending the vagrantfile to test on CentOS, Ubuntu, etc is trivial, compared to scripting the puppet install in the vagrantfile directly. I'm open to switching to a CM vagrantbox if people prefer that approach.