Make `verify` accept a `Signature` rather than a slice

[breaking-change]
Implement deterministic nonce generation with HMAC-SHA512

Testing was done against python-ecdsa; python code in the test case
comments.