Injectable globals

This pull request extends insert-module-globals to allow detecting and inserting arbitrary code,
and supports all the patterns used before.

Instead of hard coding `process`, `global`, `Buffer` `__dirname`, and `__filename`,
these become defaults that may be overridden.

it also creates a way to do this https://github.com/substack/insert-module-globals/pull/5 that is far more flexible.