Enforce ES3 compatibility and fix associated errors

The only code changes here were in the tests, but we probably want to be able to run those under older IEs. :bowtie: