Married HD wallets: introduce shadow keychain notion

As per [married wallets design notes](https://groups.google.com/forum/#!msg/bitcoinj/Uxl-z40OLuQ/e2m4mEWR6gMJ) a following (aka shadow) key chain was introduced to `KeyChainGroup`.
From client's perspective to make married wallet one has to call wallet's `addFollowingAccounts` supplying extended public keys of other signing parties. After that `currentAddress`/`freshAddress` calls will start yield P2SH addresses made of corresponding followed and following chains keys.


I think it would be a good idea to assert here that all of the keys have the same last ChildNumber component in their path.  (i.e. that the derivation paths are all in sync)