delete queue_mutex, its work is already done by pqData->lock
rework locking scheme for presentation queue. Again

* stop cancelling presentation thread;
* use pqtarget's lock as cond mutex;
* try to wait for worker thread to get to work before exitting pqCreate()
commit work-in-progress code

Not used now anyway.
use handle_acquire for mutex acquisition for pthread_cond_broadcast

and send broadcast on presentation queue destroy to reduce destroy delay
rename ->device in *Data structures to ->deviceData

as it contains link to VdpDeviceData structure, not a handle
make structure inheritance explicit
rename VdpGenericHandle to VdpGenericData

it's a data associated with handle, not handle itself. Therefore it should
have 'Data' suffix.
add .device field to all Vdp structs to store VdpDevice handle
protect refcounts of device and pq target with mutexes
stop acquiring presentation queue handle in presentation_thread

since thread will be stopped only on presentation queue destroy, it's
possible use structure directly. There still need in mutex for concurrent
access to queue and conditional variable.
use barrier to ensure worker thread starts accepting before *Create quits
update ChangeLog