optimize gpsbutton

don't create a new clickhandler function on every click on the button
and remove the the handler before every click on the button. This will
prevent the handler from being called once for every click on the button,
it will only be triggered once, instead.
toggle a css class for the map during coordinate selection

this class is useful to style the map according to the mode. For now,
only the cursor is changed, but it could of course be styled more.