splitmap.TransformedMap is part of the Get/Put hierarchy, but it does not behave like a proper Java Map.
In particular, java.util.Map.put(K, V) returns V.
However the collections Put interface returns Object.
As far as I can tell, this was done in order to be able to include TransformedMap in the hiearchy. But the side effect is to break the generics for all the non-transformer maps in the hierarchy.
Maybe there should be a separate PutTransformed interface which has the appropriate generic types, i.e.
public T put(K key, V value)