Generified Immutable interfaces & other small improvements