Added missing conditional

The logic here was meant to have the PB client behavior match the HTTP
client behavior when only fetching the meta and siblings were found to
be present. The conditional for seeing if the 'head' parameter had been
set was missing, causing every fetch that had siblings to be repeated.
This actually isn't necessarity with PB, but I don't want to change this
behavior now in case someone is relying on it.
Expose FetchMeta.headOnly() in FetchObject

Allows you to retrieve the metadata for an object in Riak without the
value.
Preserve and expose x-riak-deleted / PB deleted

If the X-Riak-Deleted header is present in an HTTP response, or the
deleted field in a PB response, this will now be carried up into the
IRiakObject. Addresses #157
This updates the client to use Jackson 2.x

Updated all files and calls to the new Jackson 2.x
Wrong end of line chars

Fixed formatting
Removed second fetch entirely

Per our discussion, I've removed this entirely. There is simply no
reason to do a second fetch with the PB client. Metadata for all
siblings is returned in the first fetch if `head` was specified (tested
to make sure).
Removed test for removed behavior

Since we no longer do a second fetch for values in the PBClientAdapter
... we shouldn't try and test that.
@RiakIndex fails if method return type is Set<Long>
Add tests for @RiakIndex at methods of return type Set<Long>
Merge pull request #205 from guidomedina/fix-riakindex-at-setoflongs

@RiakIndex fails if method return type is Set<Long>
Merge pull request #196 from basho/gh170-jackson-upgrade

This updates the client to use Jackson 2.x
Merge pull request #193 from basho/gh192-pb-fetches-twice

Removed second fetch
Fixing tombstone support

There were a number of issues with the client as to how tombstones
were being handled. These changes create (IMHO) sane and consistent
behavior regardless of protocol (HTTP/PB)

1) Tombstones will be returned if the returnDeletedVClock(true) method is
called on StoreObject / FetchObject. If this is not called, tombstones will
either not be retrieved in the case of PB or silently discarded in the
case of HTTP. They will not be passed to the Converter or the ConflictResolver

2) Regardless of whether there is only a tombstone or a set of siblings
that contain a tombstone, an object will be returned from the underlying
original clients if tombstones have been requested. This solves a problem
where previously two different behaviors occured depending on which of the
above was the case.

3) The default JSONConverter will no longer crash if a tombstone is passed
to it; a new instance of their POJO will be created and returned. In addition
as a convenience a new annotation (@RiakTombstone) is available. The user
can annotate a boolean field in their POJO which will be set to true if
the object represents a tombstone.

4) The IRiakObject interface and our DefaultRiakObject now have a isDeleted()
method. This will return true if the object represents a tombstone.
Merge branch 'master' into gh157-expose-deleted

Conflicts:
	src/main/java/com/basho/riak/client/convert/reflect/AnnotationInfo.java
	src/main/java/com/basho/riak/client/convert/reflect/AnnotationScanner.java
	src/main/java/com/basho/riak/client/operations/StoreObject.java
Removed last usage of FetchObject.hasDeletedVclock
Added tests for tombstone handling

Added integration tests that exercise the new tombstone
handling.
Added to all tests, fixed small bug in test
Made UndefinedStatDeserializer global

Changed so that the UndefinedStatDeserializer will always
be used rather than just on specific stats.

fixes #208
Merge branch 'gh153-expose-head' of github.com:basho/riak-java-client into gh153-expose-head
Small change to javadoc