create separate class for deterministic key generation. add pubkeys to validateaddress