title: Chaining angular $timeout
body: <p>I'm trying to chain calls to AngularJS's <code>$timeout</code> function. I've seen lots of threads on here which allow the chaining of promises, some specifically using angular's <code>$q</code>, but this seems like it should be super simple. I guess I'm missing something obvious. Here's what I'd <em>like</em> to do:</p>
  
  <pre><code>$timeout(firstFunction, firstDelay)
  .then($timeout(secondFunction, secondDelay))
  .then($timeout(thirdFunction, thirdDelay));
  </code></pre>
  
  <p>While all three functions get called, the <code>$timeout</code>s all start simultaneously. I can see why this doesn't work, but <em>how</em> do I get what I want? Can I even use promises here? I was previously just arranging the delays so that they cascade, but that seems like more work to maintain...</p>