HDWallet: derive should adhere to BIP32