Add KeyChainGroup.isDeterministic() and Wallet.isDeterministic(). Add static constructor for non-HD wallets.

The current API design is based on the assumption that HD wallets are always better: there are still use cases for importing keys, but having a wallet without any "HDness" at all doesn't seem to have any use case. So what exactly are these constructors for? Currently due to the way it works if you never use the HD feature an HD chain will not be instantiated at all, but that's more an artifact of the design than anything else.