Rewrite Bridge class.

The bridge class is now capable of storing additional information which
we might find useful about a bridge. Additionally, there are now methods
for updating a Bridge instance's attribute via descriptors parsed with
Stem.
Deprecate old bridgedb.Bridges.Bridge class.
Replace descriptors in test_parse_descriptors with newer leekspin ones.

The descriptors in this unittest file were created by an older version of
Leekspin, which had a bugs in the way it created signatures and coverted
between fingerprint formats.

In addition, we're now able to test parsing of obfs4 `transport` lines.
Validate extrainfo descriptors by default.

Also update the documentation of `b.p.d.parseBridgeExtraInfoFiles` to
mention a method for ``router-signature`` verification, and the reasons
why we use Stem's ``RelayExtraInfoDescriptor`` class, rather than the
``BridgeExtraInfoDescriptor`` class.
Add a utility function for saving copies of unparsable descriptor files.

 * ADD new function, ``b.p.descriptors._copyUnparseableDescriptorFile``,
   for saving descriptor files that were unparseable for later
   debugging.
Add error handling for cases when Stem cannot parse an extrainfo file.

If a file containing bridge-extrainfo descriptors cannot be parsed the
first time, and validation was enabled, then we parse it again with
Stem's validation functionality disabled. If we still can't parse the
file, we save a timestamped copy of the file for later debugging an
continue with the next file.
Fix unittest; discover how many 'transport' lines parsers should find.

 * CHANGE unittest
   ``test_parse_descriptors_parseBridgeExtraInfoFiles_one_file`` to
   automatically discover how many transport lines the descriptor
   parsers should have found.
fixup! Replace descriptors in test_parse_descriptors with newer leekspin ones.
fixup! fixup! Replace descriptors in test_parse_descriptors with newer leekspin ones.
fixup! Validate extrainfo descriptors by default.
fixup! Add test method to encsure that parseNetworkStatusFile() returns a dict.
fixup! Add unittest for parseNetworkStatusFile() with two descriptors.
Add two unittests for parsing networkstatus files with headers.
Add unittest for descriptors with identical timestamps.
fixup! Add additional unittests for bridgedb.parse.descriptors module.
fixup! fixup! Add additional unittests for bridgedb.parse.descriptors module.
Add unittest for parsing extrainfo files without validation.
Add three unittests for parsing unparseable extrainfo files.
Add unittest for parsing empty extrainfo files.
Add two unittest for _copyUnparseableDescriptorFile().