1 seller listing a block of shares with multiple potential bidders, can run an English Auction, Dutch Auction, sealed-bid, etc.
function createListing(uint96 quantity, uint256 startPrice) external override returns (bytes32);
function executeTrade(bytes32 listingId, uint96 tradeQuantity) external payable override;
function cancelListing(bytes32 listingId) external override;