Why is setState asynchronous? | Hacker News Reader