These are difficult to solve problem which will likely require some kind of distributed escrow, multi-signature solution, or fiat based crypto-currency. To say it is "easy" would indicate you haven't thought this out.
So the checking is done in the client?
The client which will be open source?
The source code anyone can modify to include the "checking portion"?
So my modified version will let me spam the network with bogus bids and asks?
A 3rd party exchange serves two major functions:
a) to ensure the trader has the asset being traded.
b) to ensure the trader can't avoid trading when his trade is matched.
The entire decentralized p2p exchange boils down to solving those two problems.