Optimize verification: avoid field inverse

Suggested by Greg Maxwell.
Add explanation about how inversion can be avoided
Merge pull request #123

13278f6 Add explanation about how inversion can be avoided (Pieter Wuille)
ce7eb6f Optimize verification: avoid field inverse (Pieter Wuille)
Remove GMP field implementation
Merge pull request #168

7277fd7 Remove GMP field implementation (Pieter Wuille)
Make signing fail if a too small buffer is passed.

Bug discovered by Sergio Demian Lerner.
Merge pull request #169

603c33b Make signing fail if a too small buffer is passed. (Pieter Wuille)
[API BREAK] Use a nonce-generation function instead of a nonce
Implement SHA256 / HMAC-SHA256 / RFC6979.
Use rfc6979 as default nonce generation function
weak normalization
Weak normalization for secp256k1_fe_equal
Add _fe_normalizes_to_zero method
Add _normalizes_to_zero_var variant
Merge pull request #154

49ee0db Add _normalizes_to_zero_var variant (Peter Dettman)
eed599d Add _fe_normalizes_to_zero method (Peter Dettman)
d7174ed Weak normalization for secp256k1_fe_equal (Pieter Wuille)
0295f0a weak normalization (Pieter Wuille)
Merge pull request #163

bbd5ba7 Use rfc6979 as default nonce generation function (Pieter Wuille)
b37fbc2 Implement SHA256 / HMAC-SHA256 / RFC6979. (Pieter Wuille)
c6e7f4e [API BREAK] Use a nonce-generation function instead of a nonce (Pieter Wuille)
Optimize _double_var

- Save 1 _fe_negate
- Prefer operations on local variables
- Reorder code somewhat to group inline function calls together