Adds support for ImmutableMap in jclouds gson

Specifically making sure deserialization works properly.
I think moving.
Here is the case:
In neutron, I have a domain object which contains an ImmutableMap collection, as most (probably all) collections we use should be. Currently (before this fix) the constructor will take a regular Map, and then use copyOf to instantiate the ImmutableMap.