Generics for Position, added core types