So let's talk about the technical side of how this should work.
There are three entities: buyer, merchant and arbitrator.
arbitrator is something a la cryptothrift or the old bitnet. It may also be a payment processor like bitpay or coinbase.
1. Buyer and merchant both create accounts, arbitrator gives him each the same xpub key used for generating a multisig pubkey and a public signature key (could be a bitcoin address or a PGP key)
2. Buyer and merchant each upload the xpub keys used for generating multisig pubkeys. In the buyer and merchant's GUI there are a list of Buyers/Merchants and a list of Arbitrators.
Now an account has been created, which only needs to be done once.
3. A buyer sees something she wants to buy, presses a button Buy and is given an option to choose a Merchant and Arbitrator from the list.
4. The marketplace will choose three integers, it creates a message containing them and signs it with its signature privkey. This information is passed to the buyer and merchant using either http or copypasted from the website into the client.
5. The buyer and merchant verify the signature and use the three integers with bip32_child_key_derivation() to get three public keys. They use them to create a 2-of-3 multisig address.
6. The buyer clicks a button called Fund Escrow which pays bitcoins into the multisig addresses, after its confirm the merchant's client displays a message Escrow Funded.
Now for what happens if merchant is honest.
7. Merchant fulfills their end of the obligation by shipping the goods or services.
8. On the arbitartor's website, the buyer (or merchant) press a button called either Release Escrow or Receive Escrow Money. The arbitrator creates a partially signed transaction spending from the multisig addresses, going to the merchant and also a cut going to the arbitrator.
9. Merchant downloads transaction from arbitrator, either using http or copypasting.
A. Merchant's GUI examines the transaction, displaying to the user how much money goes to which identity. User presses Sign Off Payment which signs and broadcasts it.
Now for what happens if merchant is dishonest
B. Merchant doesn't fulfill their obligation
C. On the arbitartor's website, the buyer presses a button called Get A Refund. The merchant and buyer now argue their case with the arbitrator making the final decision. These discussions should be signed so they could be spread around if the arbitrator is being unfair. The arbitrator creates a partially signed transaction spending from the multisig addresses, splitting the money as agreed.
D. Buyer or merchant downloads transaction from arbitrator, either using http or copypasting.
E. Buyer's or Merchant GUI examines the transaction, displaying to the user how much money goes to which identity. User presses Sign Off Payment which signs and broadcasts it.
Now for what happens if the arbitrator disappeared.
F. Merchant fulfills their end of the obligation by shipping the goods or services.
G. When the buyer and merchant obtained the other's xpub keys from the arbitrator, they also got the other's contact details. Maybe an email address or website. These details are now used to communicate.
H. They use the details to create a transaction that send the money to the merchant, or whoever they agreed on.
I. If this happens when the arbitrator has not disappeared, it will be visible on the blockchain and the arbitrator will ban the merchant and buyer from it's services because they are not paying the arbitrator his cut.