Teach riak_core Bucket Types

Like buckets, we must teach core this because a few subsystems use them. Bucket Types provide a method for grouping buckets logically (see https://github.com/basho/riak/issues/362).

This PR requires Cluster Metadata which can be found on https://github.com/basho/riak_core/tree/corekv-unstable and https://github.com/basho/riak_core/tree/jrw-cluster-meta. This PR should not be merged until Cluster Metadata has the +1 and is merged as well.