Support editing 'choice' udfs. Fixes #285.
Support editing 'choice' udfs.  #285.
Merge pull request #291 from ahinz/fix/285/edit-choice-fields

Support editing 'choice' udfs. Fixes #285.
Add URL test for creating a tree
Remove unused argument to buildSearch()
Show map with plot location on plot detail page
Create reusable module plotMarker.js, and refactor addTreeMode.js to use it
Allow changing plot position from plot detail page

* Hit "Edit" to edit the plot details, then hit "Move Tree" to change plot location

Use new features of inlineEditForm.js:
* Use returned Bacon property "isInEditModeProperty" to update UI as user enters/exits edit mode
* Use "onSaveBefore" callback to augment uploaded data with plot location (plot.geom)
* Use "onSaveSuccess" callback to redraw the map when location is updated

Also:
* update_plot_detail() now returns the geo rev hash (via update_plot_and_tree())
Fix spelling of "accordion"
inlineEditForm.init() no longer does show/hide of elements

...and is simpler
Switch between "browse trees" mode and "edit tree details" mode
Unify naming of "field" templates

field -> field   (unchanged)
plot_field -> field_td   (same as "field", but uses <td>)
species_field -> field_species_td  (variant for species, uses <td>
(new) -> field_species   (same as "field_species", but uses <li> like "field")
Edit tree fields on map page

* Remove existing popup when leaving "browse trees" mode
* Allow changing an inlineEditForm's "updateUrl" after it has been initialized
* When user clicks a tree, set URL for updating that tree on inlineEditForm
* Initialize species typeahead
* Scope "editFields" etc. selectors on inlineEditForm, since to avoid collisions with "add trees" mode
Create reusable plotMover.js to use on both map page and plot detail page
Allow moving plot on map page (in "edit tree details" mode)

* "Edit tree details" mode gets buttons "Move Tree" and "Cancel Tree Move"
* Return plot location in plot_accordion.html via data attributes on form element
* Moving the plot handled by plotMover.js
* All modes share an instance of plotMarker
* Show/hide marker when user selects/deselects a tree
* Pass mapManager to modes, simplifying map update after add/move tree
* Show marker differently when it's being moved (will be more beautiful in the future)
Post-rebase cleanup, de-lint and add some doc
Add update_plot_and_tree_request() helper function

* Changing the return value of update_plot_and_tree() broke some tests
* This also allows removing duplicated code for handling ValidationErrors
Fix a comment