java/HashValue: add+subtract, remove combineWithValue

Added arithmetic add and subtract operations to HashValue types. Also
removed the obsolete combineWithValue operation that had weird/broken
semantics.
U128.add(): optimize overflow comparison

It is enough to just compare one of the operands to check for
overflow -- in the case of overflow, the result is guaranteed
to be smaller than either one.
U64|128|HashValue: create Builder classes

U64, U128, HashValue gain a Builder class that allows to perform
a series of operations on the values without re-allocating the object.
pom.xml: Update Guava Dependency to 17.0

... to be consistent with the controller which will also be updated
Merge into master from pull request #295:
java/HashValue: add+subtract, remove combineWithValue (https://github.com/floodlight/loxigen/pull/295)