GCE is missing ProviderMetadata and locations needed rework.

This change adds ProviderMetadata, which allows us to properly tag locations of zones. It also consolidates how locations are created and what's derived from them.

For example, you can see that now, zones are correctly linked to their region.
```
Nov 06, 2014 11:10:44 AM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCompareSizes
INFO: smallest {id=us-central1-a/n1-standard-1, providerId=12907738072351752276, uri=https://www.googleapis.com/compute/v1/projects/jclouds-dev/zones/us-central1-a/machineTypes/n1-standard-1, name=n1-standard-1, uri=https://www.googleapis.com/compute/v1/projects/jclouds-dev/zones/us-central1-a/machineTypes/n1-standard-1, location={scope=ZONE, id=us-central1-a, description=us-central1-a, parent=us-central1}, processors=[{cores=1.0, speed=1.0}], ram=3840, hypervisor=kvm, supportsImage=ALWAYS_TRUE}
Nov 06, 2014 11:10:44 AM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCompareSizes
INFO: fastest {id=asia-east1-a/n1-highcpu-16, providerId=4523206295868016186, uri=https://www.googleapis.com/compute/v1/projects/jclouds-dev/zones/asia-east1-a/machineTypes/n1-highcpu-16, name=n1-highcpu-16, uri=https://www.googleapis.com/compute/v1/projects/jclouds-dev/zones/asia-east1-a/machineTypes/n1-highcpu-16, location={scope=ZONE, id=asia-east1-a, description=asia-east1-a, parent=asia-east1}, processors=[{cores=16.0, speed=1.0}], ram=14746, hypervisor=kvm, supportsImage=ALWAYS_TRUE}
Nov 06, 2014 11:10:44 AM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCompareSizes
INFO: biggest {id=asia-east1-a/n1-highmem-16, providerId=5587987846282440416, uri=https://www.googleapis.com/compute/v1/projects/jclouds-dev/zones/asia-east1-a/machineTypes/n1-highmem-16, name=n1-highmem-16, uri=https://www.googleapis.com/compute/v1/projects/jclouds-dev/zones/asia-east1-a/machineTypes/n1-highmem-16, location={scope=ZONE, id=asia-east1-a, description=asia-east1-a, parent=asia-east1}, processors=[{cores=16.0, speed=1.0}], ram=106496, hypervisor=kvm, supportsImage=ALWAYS_TRUE}
```