code: def make_DID(name_type, address, index):
      
      if name_type not in ['name', 'subdomain']:
          raise ValueError("Require 'name' or 'subdomain' for name_type")
  
      if name_type == 'name':
          address = virtualchain.address_reencode(address)
      else:
          # what's the current version byte?
          vb = keylib.b58check.b58check_version_byte(address)
          if vb == bitcoin_blockchain.version_byte:
              # singlesig
              vb = SUBDOMAIN_ADDRESS_VERSION_BYTE
          else:
              vb = SUBDOMAIN_ADDRESS_MULTISIG_VERSION_BYTE
  
          address = virtualchain.address_reencode(address, version_byte=vb)
  
      return 'did:stack:v0:{}-{}'.format(address, index)
docs: Standard way of making a DID.
      name_type is "name" or "subdomain"