Married HD wallets: introduce shadow keychain notion

As per [married wallets design notes](https://groups.google.com/forum/#!msg/bitcoinj/Uxl-z40OLuQ/e2m4mEWR6gMJ) a shadow key chain (the one that follows another keychain) was introduced to `KeyChainGroup`.
From client's perspective to make married wallet one has to call wallet's `addFollowingAccounts` supplying xpub form of extended public keys of other signing parties. After that `currentAddress`/`freshAddress` calls will start yield P2SH addresses made of corresponding regular and shadow key chains keys.

Shadow key chain is a `DeterministicKeyChain` and is being serialized along with the normal `DeterministicKeyChain`s with the only difference that it has a reference to "followed" keychain and has no seed.

I've never heard of TrustedCoin. It's certainly reasonable to sort the keys, it's just the odd nature of this sort that confuses me.