transform/variance

Added variance checking.
I think ptElem should not be a singleton type here. That should be erased away. I'll add an assertion to verify that fact.