Adds initial Google Map

Adds initial map in search sidebar to replace map view of results.
Adds markers to map

Adds markers for search results and fits map to marker bounds.
Refactors ajax search code into modules

Moves ajax search code into several modules for easier development.
Merge branch 'master' into map-refactor
Code refactoring

Further refines module structure to simplify the ajax-search module.
Adds ajax submission for form

Form was being submitted normally, this re-adds the ajax functionality
to the form.
Adds server-side map data formatting

Map data is aggregated on the server and only the needed fields are
exposed for consumption by the map. Also, headers map results header.
Changes id to _id

To make referenced fields more consistent, references to _id is changed
to id for entries in the data.
Adds reverse geocoding of map centerpoint

When zooming the map centerpoint is reverse geocoded to retrieve the
current address for a search.
Fixes #197 - url encodes ajax query values

Performing an AJAX search was not URL encoding the keyword and
location. This commit fixes that.
Adds search center location marker

Adds marker to indicate center point of search.
Changes map data generating loop to use reduce instead of map

To consolidate the loop and rejecting the values that are null, this
commit implements reduce instead of map for generating the json data
hash used by the search results map in the view.
Fixes failing tests

The tests that search for an erroneous location were setting the orgs
variable in the controller equal to null, which was causing the map
data loop to raise an exception. This encloses that loop in an if
statement so it only runs when their are results from the query.
Adds radius to zoom map functionality

Adds ability to set zoom level based on radius.
Adjusts map options

Shows and positions scale and hides map type control.
Fixes #194 - scrolls page to the top of on ajax results

When ajax loads part of the page, it's scrolled to the top of the page
to ensure the detail view is visible when results are clicked.
Turns off geocoding

Comments out geocoding.
Fixes misplaced closing comment

Code was breaking because the closing comment of the commented out
geocoder block was misplaced. This commit moves the closing comment to
the correct location.
Disables map interactivity

- Disables map interactivity to enable incremental implementation of
map functionality.
- Adds documentation and organizes map code better.
Removes pagination manager

The pagination manager is covered by the input manager, so this removes
the pagination manager.