title: Why is url available in node without requiring it?
body: <p>execute this:</p>
  
  <pre><code>$ node -e 'console.log(url.parse("http://x.com/"))'
  </code></pre>
  
  <p>and you'll get this:</p>
  
  <blockquote>
    <p>Url {   protocol: 'http:',   slashes: true,   auth: null,   host:
    'x.com',   port: null,   hostname: 'x.com',   hash: null,   search:
    null,   query: null,   pathname: '/',   path: '/',   href:
    '<a href="http://x.com/" rel="nofollow noreferrer">http://x.com/</a>' }</p>
  </blockquote>
  
  <p>why? I didn't require <code>url</code> first so it should be <code>undefined</code>.  I find no documentation on it and what else may be available.</p>
  
  <p>additionally, if I try to use it in a file, I do actually need to require it first.  why??</p>