Refactor automated tests to be rspec instead of posix shell

Includes:

* Creating a Distro class to wrap up interacting and provisioning a distro to test against laptop
* Reimplementing all tests as rspec expectations
* Clarifying the testing / box rendering / box publishing workflow
* Documentation updates