Added support for VM extensions, static IPs, specification of arbitrary vm sizes and reserved IPs.

This PR contains changes for support for VM extensions, static IPs, specification of arbitrary vm sizes and reserved IPs.
do you need to checkout the response does contains the entry? If the 'get' will throw on "not found", then you are fine