syncscript: general cleanup
Address: consistent json formatting
Address/Script: consistent function ordering
Script: use PubKey objects not prebuilt Buffers
Transaction: rename hashTransactionForSignature to hashForSignature
Transaction: rename (de)serialize to [to/from]Buffer
ECPubKey: improve tests and extract test data to fixtures

The use of fixtures allows for more behavioural driven tests and simpler
addition of more test cases in future.

However, as ECPubKey is just a wrapper around other strenuously tested
modules, the test data is currently limited to testing a subset of the
total wrapper.

This should probably be done better by using mocked out modules instead.
ECKey: remove *Buffer/*Hex functions

An ECKey is a composition of a private key (D), a public key (Q) and its
compression flag.

These functions gave the impression of serialization of this
composition, when really they only serialized `D`.
They have therefore been removed in favour of always using a sane
serialization format (WIF) that matches the needed behaviour.

If a user needs the previous functionality, simply use `privKey.D.*`
instead of `privKey.*`, as BigInteger supports `*Buffer/*Hex` functions
as expected.
ecdsa: add serializeSigCompact and tests

This also adds tests for all other ECDSA serialize/parsing functions.
The k, r, s and D values were sourced from test vectors on
https://bitcointalk.org/index.php?topic=285142.40 .

The compact signatures (aka, i values) were generated from bitcoinjslib, but they
are straight forward anyway.
ec: add better test vectors for ECPointFp encode/decode

These test vectors were generated internally.
ec: extract THREE constant
ec: use signum() instead of equals(ZERO)
ecdsa: use shamirs trick properly
ecdsa: remove unnecessary function
ecdsa: consistent parameter ordering

The bias towards moving e out of the
funciontoinadfojdfpsoidjfadoifjdspiofjdas jdifjasdifpasdfsadufhasdif
THIS NEEDS TO BE EXPLAINED AND STUFF
ecdsa: prefer to use [r, s] values directly
ecdsa: improve BIP62 'low s value' inline comment
ecdsa: P_OVER_FOUR is a curve specific constant
ecdsa: extract BigInteger constants
ecdsa: use square() instead of x*x