Initial functionality

- Adds two convenience functions for vault validation and cleanup that uses a manager object to track data throughout the process
- Provides a general structure for the project
- Achieves 100% test coverage on the structure

There is much left to do to complete this, but the basic structure and public interface should now be in place.
Yes, at some point I will. This is just initial cut.

Also, I think I'm going to take the authengine out of this part since it's requiring the deuceclient be provided. There's no other reason for it, and it could be extracted from deuceclient if necessary.