Refine IE matrix transforms

I moved out the actual setting of the matrix to a separate function,
preferring to replace ONLY the matrix filter, not any other filters,
and only set the z-index if it had not yet been set.

I also added better browser detection for IE11, which is reported
incorrectly by the closure library.
Fix issue with IE9+ transform origin