Add support for use of input  JSON skeletons

Added ``--generate-cli-skeleton`` to generate the JSON skeleton to fill out
and ``--cli-input-json`` to use that skeleton as input to a CLI command.
Add unit test for input JSON skeleton feature
Added integration test for json skeleton feature
Clean up the input json skeleton code
Update JSON code based on feedback
Add generate skeleton integ test
Accepts input shape of None
Fix arguments with no required setters
Unit and integration test pass for json skeleton
Refactor the clidriver event system
Updated the travis yml for unittest2
Updated CHANGELOG
Merge pull request #963 from kyleknap/json-skeleton

Json skeleton