Add sibling-resolution functions.

A resolver function takes a RiakObject and (hopefully) resolves its
siblings into a single sibling. Resolvers are invoked automatically
when fetching an object returns siblings.

The resolver can be set on the client, the bucket, or the individual
object. If the object in conflict has no resolver, the bucket's
resolver will be used, and then the client's resolver if the bucket
has none.

The default resolver does no resolution. Also included (but not
assigned) is a resolver that selects the latest sibling based on the
`last_modified` property; see riak/resolver.py for more details.
Type-check when setting the resolver on bucket and object.
Factor out the sibling generation into a helper method.
Merge pull request #257 from basho/sdc-resolvers

Add sibling-resolution functions.