java/HashValue: add+subtract, remove combineWithValue

Reviewer: @vaterlaus @rlane

The HashValue types gain arithmetic add and subtract operations. Also
removes the obsolete combineWithValue operation that had weird/broken
semantics.
Yeah, makes sense.