Switch quote style around party names in diffs
Prompt with more detail about the kinds of sources we like

There have been a few cases where people have used a third-party
candidate site as a source for their information, whereas we want
sources like newspaper reports or official party pages.

This commit adds the following wording into each source prompt:

  Please don't quote third-party candidate sites - we prefer URLs
  of news stories or official candidate pages.

Fixes #84
Update the submodule to get updated PPC data
Consider PPC scaper data most authoritative; overwrite different values

Ideally we would check if there had been an intervening non-automatic
edit and only overwrite if not, but that's a bit more complex to implement,
so for the moment this new behaviour (always overwrite) is preferable to
just warning and not overwriting, I think.
Rearrange the order of constituency name tidying
Remove some unnecessary indentation
Import PPCs: add an option to just check constituency names
Add some constituency name corrections
Add a couple more PPC matches
Insist that person IDs only consist of digits and update tests

The test data still used slugs as IDs, so this commit changes that, and
makes sure that the IDs in the test data match those in the current
YourNextMP database, just to avoid confusion.

A couple of tests needed their mocks updated as well; previously they
would pass a person ID which was an automatically generated mock return
value, but now that it's required to be only digits, the reverse creates
an error. This means setting mock_popit's return value for persons to
FakePersonCollection in a couple of extra places.
Fix the 'DateTimeField received a naive datetime' warnings
Remove debugging output that's no longer particularly useful

... and which clutters up the test output.
ConstituencyNameFinderView also needs get_leaderboards
Selectively add settings to contexts with a new context processor

In order to get at settings.SOURCE_HINTS in a template, we were adding it
to the context; we're going to want to do this for other settings in the
future, so it makes sense to add a known list of them in a context
processor instead. (This is what's done in Pombola, for example.)
Add a optional setting for Google Analytics
Add a method to update a PopItPerson from PopIt
Add workaround for sometimes getting stale information from PopIt

There seems to be some situation (which I haven't yet managed to
reproduce in a minimal test case) where we get back out-of-date
information from PopIt when redirecting back to a person's page after
updating them. This commit tries to work around that by retrying the
GET up to 5 times if we get inconsistent data back.  It adds a retry
query parameter on any retries so that it'll be clear from the PopIt and
varnish logs that these are the retries.

This should stop people getting confusing 500 errors from the exception,
provide more information in the logs and reduce the amount of error
email we get, so it seems like a reasonable second-best to fixing the
underlying problem.

This is a workaround for issue #57
Merge branch 'stale-popit-workaround'
Fix an error in PopItPerson.update_from_popit
Make test_constituencies_page work without PopIt