Debug output conditional, lock requests asynch, don't analyse simple locks

The dependency analysis with cycle detection is fairly expensive,
and should not be done on locks that have no waiting agents.

A very crude test comparing mnesia taking write locks on a ram_copies
table with 5 replicas, and 'locks' taking the same number of write
locks on the same number of nodes: first, 'locks' was twice as slow,
but when the simple locks (all, in this case) were excluded from
cycle analysis, 'locks' completed slightly quicker than mnesia.