Browserify compatibility

Using 'this' to find the global means that the file can't be bundled in a 'use strict' file.  Function('return this')() always returns the global, regardless of whether you are in strict mode or not.

I've also added a ; before the function definition, since again, if this file were concatenated with another that had no ending semicolon, bad things could happen.