Improvements to Rack JSON serialization

This patch will add support for 'links' in JSON and properly format the 'chassis' attribute. The json response now looks like this (which is very close to what it should look like in the end):

```json
    {
       "subnet": "192.168.1.0/255",
       "name": "my_rack_12",
       "links":
       [
           {
               "href": "http://0.0.0.0:6385/v1/racks/21",
               "rel": "self"
           }
       ],
       "capacities":
       [
           {
               "name": "total_cpu",
               "value": "64"
           },
           {
               "name": "total_memory",
               "value": "1024"
           }
       ],
       "chassis":
       {
           "links":
           [
               {
                   "url": "http://ironic.local:3333/v1/chassis/123",
                   "rel": "self"
               }
           ]
       },
       "slots": 1,
       "id": 21
    }
```