title: Asynchronous tasks in grunt.registerTask
body: <p>I need to call two functions within <code>grunt.registerTask</code>, but the second function has to be called after the first function is done.</p>
  
  <p>So I was wondering if we can use callbacks or promises or other asynchronous mechanisms within <code>grunt.registerTask</code>.</p>
  
  <p>(More specifically, I need to launch karma in my first function call, and run karma in the second function call (to execute the initial unit tests). But in order to run karma, I need to launch it first. And that's what I'm missing.)</p>