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

Added support for volume types
No, I want you to delete the two json_str.replace lines. Only new line characters inside of strings should be escaped.. That is a part of the JSON spec. For example:

```python
>>> import json
>>> json.loads("""{"key": "line 1\\nline 2"}""")
{u'key': u'Line 1\nLine 2'}
>>> json.loads("""{"key": "line 1\nline 2"}""")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Invalid control character at: line 1 column 16 (char 15)
```

However, new-line characters outside of a JSON string should be able to contain any whitespace character.

This should work fine given any modern JSON library:
```python
import json
json.loads("""\r\r{\n\n"key"\n\n:\n"line 1"\n\r}\n\r""")
```

Using simplejson shouldn't be necessary...