Add Transaction bitcoin core tests and have bitcoin core test coverage

Note: this PR depends on https://github.com/bitpay/bitcore/pull/208. Review and merge that first please, and I'll rebase this PR. 

Finally! This adds the missing passing tests for Transaction to make bitcore have 100% bitcoin core test data coverage. 

This PR includes various small (but tricky to find) fixes and refactors, such as:
- fix IsPushOnly()
- fix checkSig() to use new Key interface
- fix hashForSignature (once more)