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.
Is this right? I would have thought it was:
```java
if (UnsignedLongs.compare(newRaw2, this.raw2) > 0) {
```