Allow people to enter Facebook URLs
Fix reverting to the original version of person's data

When you revert someone marked as standing in 2015 to the original version
of that person, the code will PUT a person's data where the value for the
'standing_in' attribute will just have a '2010' key rather than both a
'2010' and '2015' key. Unfortunately, due to:

  https://github.com/mysociety/popit-api/issues/95

... this will leave the person with an inconsistency between their
memberships and 'standing_in'. The same is true of 'party_memberships'.
As a workaround, first PUT a version of the person that will have null
values for 'standing_in' and 'party_memberships'.
Make the PopIt base API URL available for the help pages

We no longer need get_search_url (but might as well keep it) but will
need the base API URL in documentation pages for the API.
Form validation for 2015 constituency and party

Previously you'd get an error if you selected 'Standing in 2015' but
didn't specify a party or a constituency - this commit fixes that by
adding clean methods to check that the right fields are completed.
Make sure psycopg2 is installed
travis.yml: Attempt to speed up 'pip install -r requirements.txt'

On other projects, turning off compiler optimizations has sped up travis
a great deal - it's not likely to make such a big difference here, since
we're not requiring lxml or numpy, but it can't hurt and may be a small
speed-up.
Make the database in general.yml SQLite (a better default for most)
Don't error if new fields are now expected
Fix tests to account for the "double PUT" workaround in 10890a694

These tests should have been updated in that commit, but they've been
pushed to master for some time now.
Make sure the party_memberships field is actually written back to PopIt

When switching to doing the PopIt updates in update.py, I accidentally
left out the party_memberships field, and only included standing_in.
This doesn't actually make a difference to the running of the site (since
party membership data is in memberships anyway), but it's helpful to
people getting data from the API to have a simplified representation.
Add a gender field for people
Fix the ID of the Labour Party in an example in a comment
Add 'post_id' to the 'standing_in' documentation
Remove an unused function
Allow additional query parameters to be specified to get_search_url
Give some variables better names
Make sure 'identifiers' can be set and preserved

This is important because we use it to store the old YourNextMP ID from
the imported data.
Add a comment (hopefully?) explaining get_person_data_from_dict
Add a field for the party PPC page's URL

These have quite a bit of information on them, and they're typically the
source for our PPC data, so we should make them available.
Update submodule to include PPC data