Do you know how node resolves conflicts? For example if you `require('file')` and there are both `file.js` and `file.coffee`. In your implementation, the first extension that was setup wins (based on an non-standard object iteration order).