Possibility to get root dependency

Didn't want to change your style or overload current method with extra logic (what can bring bad performance for others). My change reverse order of require. It is useful when you work with Mongoose for instance. Mongoose keeps "per require" model storage. If your main project require mongoose and you use library which use mongoose, then it may happen that even by using parent-require they will init "two mongoose sandboxes". That usage ensures your app and other modules use the same one. Feel free to refactor to your standards.