Install cookbooks from Policyfile.lock.json

Adds library code that can install cookbooks directly from the lockfile. There is no end-user interface for this behavior (that will come once some other prerequisite functionality has been implemented), but the scripts in the test-scripts directory exercise the code in a real-world-ish scenario.
The DSL is the cleanroom, that's why there's a separate class for it. Or am I missing something?