JCLOUDS-782: init for shipyard provider

Initial commit for shipyard provider. My intent was to have the entire provider coded and in something like "good working shape" before I submitted a PR but @nacx strongly suggested I not do this.

This code base is a fork of the work @andreaturli is doing with docker so there may be more than a few similarities. Shipyard itself is essentially a docker manager allowing users to connect N number of engines (docker daemons) to a single source allowing you to work with them from a single location. A few points to note:

-There are literally no testers at this point. Working on this...
-Around 10 files or so are json that gets handed back from shipyard. Used for testing purposes and do not need to be looked over.
-The idea here is to implement the entirety of ComputeServiceAdapter. All methods except 'createNodeWithGroupIntoName' have been coded. Working on this...
-All 'listNodes*' methods are being ignored. Not entirely sure why...

shipyard API can be found here: http://shipyard-project.com/docs/api/

So with that said please take a peek and let me know what you think!
Make the constructor package protected. This way you make sure it is only used by the Guice injector, which will already enforce the parameters to be present. Then you can also remove the `checkNotNull` check.