Old IE support

These are the changes necessary to be able to get PointerEvents working in old IE. The first commit removes anything that will break in old IE. The second commit provides hooks to implement the IE-specific logic.