Precompute and store the hash for operators that use GroupByHash or have hash partitioned output

Maybe write a function `<T> List<T> without(List<T> list, int element)`.  Also you can write this as:
```java
types = new ArrayList<>(types);
types.remove(element);
return ImmutableList.copyOf(types);
```