Encode URIs on the geocoder side, not on the control side.

Add a loading state to the geocoder. Fixes #299