Add support for <cinder type-list> and <cinder create --volume-type>

Added support for volume types
I can change it, but _volume_types is a private class variable.  I include the __class__ to be verbose.  It appears its a best practice too http://www.diveintopython.net/object_oriented_framework/class_attributes.html.  It is class level because we only want to do the __init__ logic if _volume_types has not been set, which is why __call__ check to see if _volume_types is None.  This achieves Singleton like behaviour.