Added surface loading; mouse click handling is its own method; added force_update; added raw_input switching of shape and color mode