Make global inititalization optomizable by closure compiler

The old way of setting the global broke with closure under advanced optimizations.  This method will work without closure still, but with closure if the user adds a `var pluralize;` to their code, closure can optimize the pluralize code/names in a whole-program fashion.
I feel like the function definition at root is more clear than a random global variable. However, I'm still hesitant since I'm sure this has to be a solved issue. Most libraries define AMD in the same way.