Separate internal state from TouchLocation 

SizeOf TouchLocation is now 36bytes from 72bytes.
Reducing the size of TouchLocation has been discussed here
mono#2963
Does this end up making a TouchCollection that uses the smaller amount of memory?
I don't know how it works with structs, but with a class this cast wouldn't be changing the memory usage. It makes sense that this would be different for structs however.