Tests
Adds IO impl
Implements delay/loop for IO version
Tests