jclouds domain classes

This needs to be reviewed and edited.

Bio: Zack Shoylev is a committer on the Apache jclouds project and a Software Developer for Rackspace. He is currently working on open source cloud SDK development. Zack’s technical interests focus on open source development, cloud computing, and big data processing with Java.

@zackshoylev
freenode: zacksh
+To ensure immutability, users have no access to a constructor or setters, and instead they must instantiate domain ...