[Bug 1015334] Many improvements to location editing

Including, but not limited to:
* Convert js whitespace to tabs.
* Fix js breaking when profile has no lat/lng.
* Search result display improved.
* Shadow hints applied.
* Marker moves after searching.
* Fit map search to mobile layouts, and improved aesthetics.
* Pressing enter on search takes the first result.
* Hide lat/lng fields on edit profile page.
* Remove unused parts of profile edit mapbox code.
* Add pacifier for search while ajax results are pending.
* Displaying bounds is optional and off by default.
* Tile layer uses mozilla.org tile set.
* Improve zooming substantially (any region which crosses the prime meridian will freak out, but this is map box’s fault for providing bad bounding boxes, not ours)
* Don't display box when there are no search results.
* Fix loader gif race condition.
* Dragging pin auto-centers on city.
* Make entry of region/city optional.
* Require entering country at minimum.
* Handle display if lat/lng is missing on profile.

Much credit to @wraybowling for UI and JS.
`loading_el` is already a reference to a jQuery object, so there's no need to re-query the DOM each time. You should just be able to do `loading_el.show();`?

Same applies to the other DOM elements queried at the the top of this JS and where they are used throughout the code.