HD wallet fromMaterHex allows specifying network

[#60]
change hd wallet constructor to take bytes

original constructor -> fromSeedString, fromMasterHex -> fromSeedHex

[#60]
Wallet address derivation follows bip32/bitcoinj keychain structure

Also wallet accepts bytes in constructor

[#60]
private a method to generate change addresses
getPrivateKey derives key on the fly

also added getPrivateKeyFromAddress
return private key rather than HD wallet node
remove keys array and usage
store accounts in closure instead of on object
fix Wallet default constructor
new master key resets accounts and addresses
Merge pull request #60 from bitcoinjs/hd-keychain-structure

HD wallet keychain structure