Added a search field, location search allows for a query

Moved the annotation/search refresh out of the user location updated
method, added the ability to search wherever the map is centered
Places controller can search nearby or by text
Map adjusts zoom to annotations

Removed manual region setting when updating the user location.
Code cleanup, usability tweaks to keyboard handling