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.
We should handle `signature` not being a `bytes.