Updated video thumbnail pipeline to use decodebin2

The video thumbnailer uses decodebin to automatically detect the file type in the thumbnail pipeline. However, decodebin does not properly demux theora streams, which causes the thumbnailer to fail for .ogv files. decodebin2 properly demuxes the theora stream and successfully creates thumbnails for .ogv files.
Use the STARTTLS command to upgrade SMTP connections where possible.

Adds the option `email_smtp_force_tls` which will cause `send_email` to error
if it is unable to use the `STARTTLS` command (e.g. where the user knows the
SMTPd supports `STARTTLS` and wishes to protect themselves against a downgrade
attack)

Setting both `email_smtp_user_ssl` and `email_smtp_force_tls` may result in
undefined behaviour if the SMTPd has not been correctly configured.

TODO: Unit tests?
TODO: Documentation?
Set up virtualenv to use py2

This commit sponsored by Jonas Öberg.  Thanks Jonas!
Adding Pump API stuff to the docs index.

This commit sponsored by Joel Luellwitz.  Thanks!
Add more security checks when updating objects and tests
Committing present MediaGoblin translations before pushing extracted messages
Committing extracted and compiled translations
Add a new migration which removes/fixes the old migration

The previous migration, as it turns out, was not needed, and there
were many inconsistencies put in place by adding it.  See issue #920.

This commit sponsored by Gergő Tisza.  Thank you!
Document both migrations, comment out old migration
Only add the constraint if we need to.  Catch an exception if we don't.

Also, updating the comment about sqlite being crazy :)
Explaining why we're committing mid-migration
If the constraint already exists, roll back to a sane state.
Pull the indexes out of the dictionary directly

Instead of checking for their keys and pulling them out later, that is.
this negation needs parens.
Okay, we don't know that indexes are falsey, so let's make it clearer.  Yeek!
Elrond keeps pointing out places I should "is not None" at :)
Fix #861 - Add unit test and documentation for email_smtp_force_starttls
Forgot to add starttls_config.ini
Raw image mediatype had a non-unicode logging call

Was causing UnicodeDecodeError when file/folder was not ascii.
Fixes bug #935.