Make constants final classes instead of interfaces

This commit prohibits implementation of the empty interface and
instantiation of the class.  Refer to _Effective Java_ item 19 for
more background.
Incorrect constructor name
Migrate InputSupplier callers to ByteSource

A future version of Guava will remove InputSupplier.
Added unit tests for compute functions
JCLOUDS-543/JCLOUDS-572: Use slugs as IDs and assume a node can have a null image if it used an imageId that has been removed