Update django admin template tabular.html to match current Django.

This patch was arrived at by:

1) Looking at where we started overriding the tabular.html django admin
template in 7c5f52efbc12aaf6adb36020c0197c7370a94cb1 and finding the django
version from requirements.txt (this was 1.3.5).

2) Checking our changes since we created this file, which are actually all
just things that have changed in the Django version too with different
whitespace.

3) Taking a copies of tabular.html from both Django 1.3.x and
our version in 7c5f52 and producing a patch.

4) Taking a copy of tabular.html from Django 1.6.2 (the version we're using
at the moment).

5) Manually applying the patch to that file - there were local changes
around it from Django, but it was obvious what needed changing.

This should get us all the changes that Django have made to that file since
we started overriding it, and the change that caused us to override in the first
place.

This should fix #1378 (I hope).
ZA: change the quote on the homepage, as requested by PMG

This changes the quote on homepage, as request by Rashaad Alli
from PMG.  Fixes #1383.
Remove unnecessary sluggable requirement.

SayIt now uses a PyPI source of mySociety's fork of django-sluggable
rather than VCS, which means it is automatically pulled in and installed
when you ask SayIt to be installed via pip. This will also be better if
at some point SayIt's version of django-sluggable should change.
ZA: homepage addition of categories and see more links
Create a description field for spinner images
Add some fields to core models to match the Popolo data model

This adds fields to the Person and AlternativePersonName models.

A significant addition is sort_name on Person, so that we can
now customize the sort order for each person, rather than
assuming that the last whitespace separated token in the
legal_name should be used for shorting.  (Use that value
initially on migration, though.)
Don't restrict a person's gender to 'm' or 'f'

Gender isn't a binary choice; also this change bring us into line with
the Popolo data model.
Refactor finding contact values, and only pass them to the template
Add a primary email address field to Person

Also make sure this email address is displayed along with other
contact details.
Fix some trailing whitespace and a missing final newline
ZA: display slide information with image and automate

Overlay spinner slide caption and description on the
slider image and automate slide transitions.
ZA: decrease size of headings on home page
Merge branch 'homepage-updates'
Only adjust the height of the profile if the right elements are present

The home page of any site was causing a Javascript error because
this script assumed that the elements on object pages were present.
Update static generation number
Merge branch 'issues/1338-add-popolo-fields'
Allow non-inline editing of AlternativePersonName in the admin

We were getting a NoReverseMatch error in the admin when viewing the
admin page for a person who has at least one alternative name when
TEMPLATE_DEBUG = True, since it was trying to get the admin URL for
editing that AlternativePersonName on its own page, for the "Edit in
admin" link.  To workaround this, make get_admin_url return False
for AlternativePersonName.  (Thanks to Matthew Somerville for
suggesting this simpler solution.)

This only appeared when TEMPLATE_DEBUG is True, because the tabular
inline template admin/edit_inline/tabular.html was being rendered
from this code in django/template/loader_tags.py:

    try:
        template_name = self.template_name.resolve(context)
        template = get_template(template_name)
        return self.render_template(template, context)
    except:
        if settings.TEMPLATE_DEBUG:
            raise
        return ''
Split big 'if' in get_context_data into a couple of classes.

get_context_data on SAOrganisationDetailSub was getting rather iffy.
Shift sub_page to view initialisation arguments.

We were always setting 'sub_page' in the extra arguments passed
as if they had been found in the URL. Instead of setting it here
every time a url is accessed, let's set it at setting up urls
time in the kwargs of as_view. This means that we can then
access all of those things directly as attributes of the view
rather than as values in self.kwargs, and it also means that
we can set class a class attribute of sub_page in subclasses
rather than doing it in the urls.py file, allowing the splitting
of, for instance SAPersonDetailSub into subclasses.
Whitespace tidy