Adding a few useful features

Hey folks, figured I'd put in a PR with some features I've developed for my app at bustrackdc.com

The main additions/changes are:

* added a setMapData function which allows you to update the map with new options after it has been shown, to, say, change the lat/lon view or zoom level programatically
* changed how annotation images work so that if no image URL is specified, no image will be used instead of a default image
* added in the commented geoOnMapMove stuff, so callbacks are fired when the user pans/moves the map
* added a javascript callback when an annotation is selected or deselected, in case you want to take action right there, before the user clicks, say, the info button

This is iOS code -- I'll submit a PR for Android when I can (I've got it written, just have to port it over) if this is useful to you. Or if it's not, no worries, just let me know and I'll keep this stuff to myself.