Make RedeemData to sort keys.

So that these keys are stored in the same order they appear in redeem script. That would make easier for signers to locate signature position in scriptSig.
HDW: Create/activate a new HD chain when a wallet is constructed if the passed KeyChainGroup is empty. This means you can back up a wallet immediately after construction even before you request a key. Thanks to Andreas for the suggestion.