User API uses new RiakFuture correctly.

This converts the user level API sync operations to
use the redesigned RiakFuture properly.

Operations await() on the RiakFuture, check if it was successful,
then either return the response or throw the exception contained in
the FailureInfo.