title: Relationship between import, require and /// <reference
body: <p>I am new to TypeScript. Here's a snippet:</p>
  
  <pre><code>/// &lt;reference path="typings/node/node.d.ts" /&gt;
  const
      fs = require('fs'),
      spawn = require('child_process').spawn,
      filename = process.argv[2];
  </code></pre>
  
  <p>Why is the <code>///</code> line required in this case? I thought that it would only be required with an import.</p>
  
  <p>On the other hand, here's another snippet:</p>
  
  <pre><code>/// &lt;reference path="typings/tsd.d.ts" /&gt;
  
  import fs = require('fs');
  import should = require('should');
  var parse = require('csv-parse');
  </code></pre>
  
  <p>In this case, 'csv-parse' does not have a tsd file installed (in typings/) nor listed in tsd.json and yet that line does not give an error?</p>