Bucket type support

Adds support for bucket types from Riak 2.0 and later.  Maintains backward compatibility with earlier versions of Riak.  Non-backend API changes are backward compatible.

Still needs tests and docs.  Looking for a sanity check on approach at this point.