Replaced async with my own thing.

Replaced `Async.forever` with my own home rolled solution. This is recursive so I was able to remove a bit of complexity in the broadcast module.