Merge pull request #156 from editorsnotes/change-models

Change models
Merge pull request #157 from editorsnotes/REST-api

REST API / Backbone
Replace xapian with elasticsearch
Use field_to_native, not to_native in note status api field
Return API responses from elasticsearch, not DB
First stab at filters & search endpoint in API
Make sure ES responses preserve document order

This should be fine?

The place where the response was loaded was in
pyelasticsearch.client.ElasticSearch._decode_response, which in turn
called requests.models.Response.json. Both of those have a lot of
compatibility related code which I have just completely foregone. We're
assuming python 2.7 already though, so this *shouldn't* be an issue
until an upgrade to python 3 (?) which would be a spicy meatball in
general (duh)
Update elasticsearch index via signals

Updates/creates/deletes document records if saved/deleted model is
registered with elasticsearch. In the case of notesections, the note
document itself is updated.
Update example settings_local.py
Remove unused files from django-haystack
License under AGPL3

Could finally do this after removing xapian (GPL v2, incompatible)
Separate out doc_type ES logic into another module

search/index.py just contains the index class now, __init__.py contains
the actual instance of the index that should be used by other parts of
EN, and types.py contains the base adapter for document types to be
registered.
Specify which fields should be highlighted in search

Can be set when registering a model with the default adapter, or by
using a custom adapter.
Replace search view to work with ElasticSearch

Room for much improvement, but this works so far. Creates a templatetag
to render a search result which is optionally highlighted. Also updates
the DocumentType adapter to receive arguments for fields which should be
highlighted.
Merge pull request #158 from editorsnotes/elasticsearch

Initial integration of elasticsearch instead of xapian! AGPL! it's all happening!