title: Nested route using getComponent does not render
body: <p>I've been building a React app with a <code>react-router</code> 3.x setup like this:</p>
  
  <pre class="lang-jsx prettyprint-override"><code>&lt;Route component={Global}&gt;
      &lt;Route path="/" getComponent={(loc, cb) =&gt; loadRoute('Home', cb)} /&gt;
      &lt;Route path="/app" component={App}&gt;
          &lt;IndexRoute
              getComponent={(loc, cb) =&gt; loadRoute('AppHome', cb)}
          /&gt;
          &lt;Route
              path="search"
              getComponent={(loc, cb) =&gt; loadRoute('Search', cb)}
          /&gt;
      &lt;/Route&gt;
  &lt;/Route&gt;
  </code></pre>
  
  <p>I've had this working really well for chunking the containers within <code>App</code>. The <code>loadRoute</code> function wraps a <code>System.import</code> call adding <code>containers/${name}/index.js</code>.</p>
  
  <p>However, adding a dynamic <code>getComponent={loadRoute(...)}</code> to <code>App</code> and navigating to <code>/app</code> causes <code>Global</code> to have no children; the JS chunks for <code>App</code> and <code>AppHome</code> are downloaded but nothing is mounted.</p>
  
  <p>The <code>loadRoute</code> function:</p>
  
  <pre><code>const loadRoute = (container, callback) =&gt; {
      return System
          .import(`containers/${container}/index.js`)
          .then(module =&gt; callback(null, module.default))
          .catch(errorLoading);
  };
  </code></pre>