Optimize nextTick

- Minimize the number of postMessage/setTimeout calls.
- Remove structural changes on list nodes.
Remove spaces around the condition.
Remove other two spaces.
Prevent additional ticking for single task
Improve comment.
Rename tick() to requestTick().
Reduce latency of the preventive tick.
Complite last change.
Minor adjustments

- No need for loop
- Comment grammar
Make tick pre-requesting continuous.
Amortize latency after thrown exceptions.
Minor loop optimizations.
Add missing spaces and semicolons.
Make amortization algorithm precise.
Make the tick request loop more clear/robust.
Make maxTicking to grow faster.
Merge branch 'master' into less-nextTick
Rename variables with more explicit names

- pending -> queuedTasks
- ticking -> pendingTicks
- maxTicking -> maxPendingTicks
- cycle -> usedTicks
- n -> expectedTicks
Merge pull request #195, optimize nextTick