Move away from explicit topography and disk types.

Summary:
Instead allow arbitrary slices of string-based attributes. There are node
attributes specified by -attrs and per-store attributes specified via -stores
(renamed from -data_dirs).

Zone config files now specify a slice of Attributes, one for each required
replica. StoreCapacity info is gossipped for each store in groups named
according to the sorted list of attributes. Allocation decisions are made
from a pool of all stores for which the required replica attributes are
supported.

Renamed RangeLocations -> RangeDescriptor, StoreAttributes -> StoreDescriptor
and NodeAttributes -> NodeDescriptor.

Test Plan: go test

Reviewers: andybons, Tobias

Reviewed By: Tobias

Differential Revision: http://phabricator.cockroachdb.org/D70