Add Shard Spaces and Retention Policies

Fixes #571. Removed the old long term and short term shards. Now if the user doesn't manually create a shard space, a catchall called "default" will be created the first time they write data in.

Added API endpoints to list, create, and delete shard spaces. Made a breaking change to the old get shards API by changing the format since shortTerm and longTerm shards aren't guaranteed to be present.

Shard spaces can be mapped to either a single database or any number of databases. Retention policies are enforced per server by a background routine that periodically checks shards in spaces that have retention policies to see if they have passed their expiration.

Conflicts:
	src/cluster/cluster_configuration.go
WIP: changing things so shard spaces always map to a database