also need to reset key waiting status on a reset.
added an example of doing tile-based movement.