Capture CPU Info/Topology as part of hypervisor detail

Added CPU Info and CPUTopology as sub-objects of Hypervisor, similar to the embedded Service object.

Ran into problem (we're running Icehouse) where OpenStack API is returning String literal "{...}" for cpu_info instead of object notation {...} so had to hack using gson to parse that portion of json string into proper CPUInfo object.

Added gson as dependency to parent pom :(