Use setImmediate to batch all editor updates, even in animation frames

When I was using nextTick to batch updates, there were issues with
flicker. So I was attempting to always update synchronously in animation
frames, which was complicated. setImmediate doesn't cause the flicker
however, so I'm able to remove the special logic for sync updates in
animation frames and just use it across the board.
Fix specs for use of setImmediate instead of nextTick in requestUpdate
Merge pull request #2747 from atom/ns-set-immediate

Use setImmediate instead of nextTick to batch React editor updates