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.
If you are checking for reserved IP before deletion, then you need to check it, irrespective of the user providing the -q/--quiet option.

Not providing -q should just ask for confirmation before deletion. If the user says yes and if the resource is not present, we will get a 404 any ways.