Use power of Generics to infer types

- Use power of Generics to infer types when possible
- Enabled code that compiler accepts now (see lines 2260 and 2272)
- Corrected few typos in underscore docs