macro code size explosion
the chronos async loop should be a fairly simple matter: it's a loop that runs callbacks - yet when compiling a simple app like nim-beacon-chain there is 1.4MB of code generated for it - something is wrong.

```
1,4M	@m..@svendor@snim-chronos@schronos@sasyncloop.nim.c
```
