title: Grunt task runs, but running each dependency task individually fails
body: <p>I am trying to modify our grunt 'build' task but I am having trouble determining how it works.  We have a task defined as follows: </p>
  
  <pre><code>grunt.registerTask('build', [
    'clean:dist',
    'useminPrepare',
    'concurrent:dist',
    'autoprefixer',
    'concat',
    'copy:dist',
    'cdnify',
    'ngmin',
    'cssmin',
    'uglify',
    'filerev',
    'usemin:html',
    'usemin:css'
  ]);
  </code></pre>
  
  <p>This works fine, but if I try to run each task in this list individually, on the 'concat' task I get: </p>
  
  <blockquote>
    <p>No "concat" targets found.</p>
  </blockquote>
  
  <p>Sure enough, the "concat" task is commented out:</p>
  
  <pre><code>// not used since Uglify task does concat,
  // but still available if needed
  /*concat: {
    dist: {}
  },*/
  </code></pre>
  
  <p>I thought maybe it was just ignoring these tasks, but my final product is missing some of my ".js" files when I run each command individually this way.  What am I missing, here?  </p>
  
  <ol>
  <li>Why does concat work with no definition when I run <code>grunt build</code> but not when I run <code>grunt concat</code>? </li>
  <li>Why would I get different results running <code>grunt build</code> than running <code>grunt clean:dist</code>, <code>grunt useminPrepare</code>, etc. in sequence?</li>
  </ol>