moved render calls out of mouse event handles in to main update loop. This centralizes the render state updates, mouse event handler is now just used for updating mouse state. This is a MVC refactor which also helps to fix gliches which occurred with dirty rectangle rendering