Support decoding RFC 6979 signatures to (r, s)

This PR will add `pyasn1` as a hard dependency (and removes it from test deps). It adds the ability to encode `(r, s)` to RFC 6979 signatures as well as decoding back to `(r, s)`

Fixes #1285.
This way of writing the test doesn't work. You need one `with` block per thing that raises an exception. As is, the first `encode_rfc6979_signature` line raises, and then the next few aren't run.