coroutines working hooray
added declaring ability