Additional type operations to TypeOps for types that can be IDs,
and so can be used as keys in maps and values in sets.
Using any of the provided operations should lead to no boxing/unboxing.
Useful generic wrappers to fastutil libraries are provided,
so that you can look at them generically.
Create Basic2ObjectMap with key type T, given capacity.
Values are represented as object, even if they can be primitive.
You can pass null as valueWriter,
but readFields/write will throw an Exception, if called.