add support for signing messages in compressed format

...this is the standard way to sign messages in bitcoin-qt. Note that the
format of a compressed signature, for messages, is quite distinct from DER
format, which is used in transactions. This commit also adds support for
recovering the public key from a signature, which is necessary for this. The
code for public key recover is taken from bitcoinjs-lib.
start adding script tests
add Script validation tests
add is* tests for Script
add getSignatures tests
add getHashType tests
paypro: expose RootCerts on PayPro.
Merge pull request #470 from chjj/expose-certs

paypro: expose RootCerts on PayPro.
paypro: minor fixes.
Merge pull request #471 from chjj/paypro_fixes

paypro: minor fixes.
Merge pull request #467 from maraoz/add/missing-tests

Add missing tests for new methods added
paypro: misc example changes.
paypro: replace old server address.
paypro: example - show raw hex when receiving Payment.
Merge pull request #476 from chjj/paypro_example_misc

Paypro example misc
add AuthMessage and fix browser tests
generalize version numbers
fix browser tests
setting networks.livenet as the default for WalletKey
Merge pull request #475 from maraoz/add/AuthMessage

adds AuthMessage and fixes browser tests