move controller to separate support package
add IO stuff