some cleanup of input handling...need to figure out how it will actually
be _handled_ and just implement that from the start...