Dump bridges to file, despite lack of BridgeHistory

We only dumped the bridges assigned to buckets if we had
bridgehistory for them. This is not so useful if we disable
the stability code which tracks this. We now dump all bridges
that are assigned to a distributor to file when the stability
code is disabled.
Add a test for Buckets

The others will require mocking a DB connection.
Add test_smtp.py by trygve.

See https://trac.torproject.org/projects/tor/attachment/ticket/9874/test_smtp.py

 * FIXES part of #9874.
Add '127.0.0.1' to copied bridgedb.conf in .travis.yml.

This is necessary to run the tests in `lib/bridgedb/test/test_smtp.py`, and
shouldn't be set on production servers. It's done with a sed command in the
`.travis.yml` file to a copied bridgedb.conf so that it doesn't ever end up in
a production config file.
Merge branch 'fix/9874-https' into fix/9874-email
Change EMAIL_SMTP_PORT to 2525 in copied bridgedb.conf for Travis.
Merge branch 'fix/9874-https' into fix/9874-email
Whitespace fixes for bridgedb.test.test_smtp.
PEP8 style fixes for bridgedb.test.test_smtp.
Remove unused/extra imports `time` and `random` from test_smtp.py.
Merge branch 'fix/9874-https' into develop
Add CHANGELOG entry for #9874.
Merge branch 'fix/9874-email' into develop
Clarify comments in .travis.requirements.txt.
Merge remote-tracking branch 'tpo-sysrqb/bug12781-dumpbuckets' into develop
Fix test_https tests to handle multiple bridge lines.

See https://travis-ci.org/isislovecruft/bridgedb/jobs/33035309#L1781 for an
example of how this test was failing.
Fix missing `twisted.trial.unittest` import in test_Bucket.py.
Fix missing `io.StringIO` import in test_Bucket.py.
Fix typo in inline code comment in bridgedb.Bucket module.
Fix test_Bucket.BucketDataTests to test `needed` attribute.