Make common_name a required field, add display_name property

display_name is will be used as the value to put into an autocomplete box
Refactored species model and autocomplete view to support typeahead.js

Since the typeahead supports client-side filtering there is no need for a
SpeciesManager

typahead.js expects an array of 'datums', which contain a value and a list
of searchable tokens, so those need to be added to the json response.
Modify the species dropdown to be a typeahead.js autocomplete.

Since very similar code will be used for the boundaries autocomplete,
the actual calling of typeahead is abstracted into a wrapper module.

Mustache templates are used for simplicity, but any JS templating engine
that can pre-compile templates should be able to be dropped in as a
replacement fairly easily.
Add very basic styling to typeahead dropdown