derive new input loop
use vtime and vmin to implement timing.
cleanup
use threaded runtime and forkOS to resolve issues with VMIN and VTIME