general update

Converted almost all coroutines to recursive Events