This deprecates the FutureUtils.addCallback
Instead people should just use the ListenableFuture.addCallback, that allows different future implementations to handle the callbacks differently.
This is in part related to issue #116...at least issue #116 made it obvious that using FutureUtils to add the callback was not a good design pattern.
This resolves #116
The solution I arrived on was solving this with documentation.  I believe that FutureCallbacks in this implementation are useful, but you must obviously be careful in how you use them.  This is slightly enforcing in that it prevents multiple callbacks from being registered, but the implementor must read and understand the documentation about how you must add a callback OR call .get().  Otherwise one of those will result in an error.