title: Difference between Angular's canLoad and canActivate?
body: <p>What is the difference between <code>canLoad</code> and <code>canActivate</code>?</p>
  
  <pre><code>export interface Route {
    path?: string;
    pathMatch?: string;
    matcher?: UrlMatcher;
    component?: Type&lt;any&gt;;
    redirectTo?: string;
    outlet?: string;
    canActivate?: any[];
    canActivateChild?: any[];
    canDeactivate?: any[];
    canLoad?: any[];
    data?: Data;
    resolve?: ResolveData;
    children?: Routes;
    loadChildren?: LoadChildren;
  }
  </code></pre>
  
  <p>When I should which one of them?</p>