Support testnet for bip32 primitives.

This branch makes bip32 primitives support both the normal network and testnet.

It paves the way for a future where one could set a config option or some flag to tell electrum to use the testnet instead of the normal bitcoin network.

Some more work is (obviously) needed to make other bitcoin functions "testnet aware", but this is a start. It is fully backwards compatible with electrum and does not break any existing functionality.

Will testing this branch I discovered a weird bug with pw_decode, so I took the liberty to add comments describing the behavior in this branch. I opened a bug for this, and will likely try to fix it in the future.