User agent header

Added a setting to specify the User-Agent header that Geocoders should send when making queries. To use, include ```'user-agent': 'foo'``` in the settings dict passed to the Geocoder constructor; this setting will be used for all requests by that Geocoder. I wasn't quite sure where to put documentation for this setting; there didn't seem to be an area for settings applicable to all Geocoders (timeout is another that appears to be undocumented)--suggestions welcome!

I also ran into some incorrect documentation during testing, so I fixed the relevant areas.