use lifted async only where needed

This patch fixes compilation with monad-control >= 1.0 (and [this branch of lifted-async](https://github.com/maoe/lifted-async/commits/feature/7-feuerbach) which allows to compile lifted-async with monad-control >= 1.0).

An alternative fix would probably be to just inject some type-signatures in a few places. However using un-lifted async where possible seems to be the more robust solution.