docs: def init(cls, path):
          """
          Set up an SPV client.
          If the locally-stored headers do not exist, then 
          create a stub headers file with the genesis block information.
          """
          if not os.path.exists( path ):
  
              block_header_serializer = BlockHeaderSerializer()
              genesis_block_header = BlockHeader()
  
              if USE_MAINNET:
                  # we know the mainnet block header
                  # but we don't know the testnet/regtest block header
                  genesis_block_header.version = 1
                  genesis_block_header.prev_block = 0
                  genesis_block_header.merkle_root = int(GENESIS_BLOCK_MERKLE_ROOT, 16 )
                  genesis_block_header.timestamp = 1231006505
                  genesis_block_header.bits = int( "1d00ffff", 16 )
                  genesis_block_header.nonce = 2083236893
                  genesis_block_header.txns_count = 0
  
                  with open(path, "wb") as f:
                      bin_data = block_header_serializer.serialize( genesis_block_header )
                      f.write( bin_data )