Nice work so far. One concern that came up is the definition of a standard.
Your proposal effectively provides a master contract which would then be used to issue NFTs through nft::create function, as opposed to defining a standard interface for NFTs like Ethereum's ERC721, and letting developers create their own contracts by implementing that interface.
What are your thoughts around that?
The contract mirror eosio.token, which provides a master contract used to issue tokens through token::create function. We are next looking into being able to trade NFTs between two contracts, which would enable developers to implement their contracts implementing the interface.