Yeah, because `path.dirname()` cuts off the trailing slash. I need then when I do the `url.resolve()`. The reason I'm using the `url.resolve()`, instead of `path.join()` is to support Windows and make sure the names always have forward slashes. Module names are like URL path segments, so Windows shouldn't treat them as filesystem paths.

The other thing I could do implement our own resolver, but I figured I'd leverage the built-in `path` and `url` stuff in Node.