Add new toplevel to separate IO from processor