add the ability to pass in a non-string iterable to
specify a list of keys in a bucket to fetch via mapreduce
Fixed #171

Now checks if the index name ends with `_bin` or `_int`

The mechanism for the checking right now uses `[-4:]` as we know it must
be 4 characters long at the end as oppose to `endswith` as we would need
an `or` as opposte to just 1 statement.
Changed format for `assertRaises`
Merge pull request #172 from shuhaowu/patch-for-171

Fixed #171
Loosen the version restriction if Riak is on a prerelease version.
change exception type
riak_object remodel
Merge branch 'master' into pevm-object-rework
Merge pull request #177 from evanmcc/pevm-object-rework

riak_object refactor
add two additional cases and add tests for all
execption raising cases
remove some debugging statements accidentally left in.
Merge pull request #178 from evanmcc/pevm-oops-cleanup

remove some debugging statements accidentally left in.
Merge pull request #169 from evanmcc/pevm-mr-list-add

add list-consuming convenience function for mr.add
WIP transport refactor. Things are broken, do not use.

* Connection manager and monitor are gone.
* PBC transport is broken up into multiple files for clarity.
* Outline of streaming operations (currently only PBC).
* All requests go through the RiakClient object, which handles the
  connection pools. Accessing the transport directly is now forbidden.
* The client can connect to multiple nodes, and each node has an
  associated error rate (to be used later when implementing error
  recovery). The node selected for new connections depends on the
  error rate.

TODO:

* Break up HTTP into smaller files and add resource detection (for URL
  generation).
* Add streaming operations to HTTP.
Actually connect to PBC by connecting the socket.
Add transport method to client.
Fix some typos and comments from @ultimatebuster.
Move client -> client/__init__.
Move connection-claiming into a new module, add retry logic.

* RiakClient.transport is now RiakClient._transport (via
  RiakClientTransport mixin).
* HTTP and PBC transports define their own version of what are
  retryable exceptions.
The node is a private attribute on the transport.