Proxies nodejs require in order to allow overriding dependencies during testing.