Bitcoin's strength is that it enables anonymous, irreversible transactions upon which it is possible to build other transaction types, including the more buyer-friendly reversible ones.
Bitpal could force the seller to keep coins on deposit for a certain amount of time, relaxing this requirement as they reached a higher and higher reputation. They would cover any losses above the amount they could recover from the seller. Sellers would gain rep for successful transactions and lose it for unsuccessful ones.
They would need a good system to ensure that neither the buyer nor the seller was lying about the transaction. Tracking numbers only help so much - the goods could have arrived damaged, and not all shipping services provide them. I've also envisioned a system where the seller ships items to a trusted party who checks them, sends pictures and description to both the buyer and the seller, and asks both parties if they wish to proceed. If so, they ship them to the buyer with a tracking number and optional insurance. If they arrive damaged and the buyer chose not to get insurance, they don't get their money back. If they chose to get insurance, then that claim is filed. It would double the cost and time of shipping, but would allow everyone involved to verify that the item shipped was correct and not a small pile of stones.
Yes, combine with a global web of trust to get the best of both the anonymous and public web.