character input now works and does some error checking