organized input types into classes
stream cleanup
more cleanup; simple impl of debugger