Split up models.py into a module

As a result, needed to add some imports to admin.py.
Try again at NoteSection model

In b8cac7a I got rid of note sections in favor of just using citations.
At the time, I said that if we wanted to go back to note sections, "we
can make [different types of sections] into their own models, and have
note sections be a generic foreign key to them". That's what this commit
does, except using concrete inheritence instead of generic
relationships.

The three types of note sections I've included:
	* Citations
	* Text
	* references to other notes

These distinct sections are all stored in different tables, but in most
cases, we will want to retrieve them by getting all of a notes'
sections, regardless of their subclasses. To accomplish this without
hitting the database much, I've added django-model-utils as a
requirement. It includes a manager for such a use case. See the article
"Automatic Downcasting of Inherited Models in Django" [1] for the basis
of this manager.

An advantage of this split is that we will be able to add different
types of sections in a modular way. Next I'll need to make serializers
and templates for each type of new section.

[1] http://jeffelmore.org/2010/11/11/automatic-downcasting-of-inherited-models-in-django/
Migrate data over for Citation note sections

Changes citations with a generic relation to a note -> Citation note
sections
Update note section imports in forms

This is broken, but it will stop raising an Exception
Merge pull request #150 from editorsnotes/note-model

Split up models.py; new note section models