Chain: A Dynamic Double Auction Framework for Matching Patient Agents