more go routining but now runloop is "main" owned