coroutine functionality

Signed-off-by: Daniel Fagnan <dnfagnan@gmail.com>