Changes for Thread::Queue::Duplex

0.11	2005-Aug-15	D. Arnold

	- added Thread::Queue::Queueable (aka TQQ) abstract class
		to provide Observable pattern for queued
		objects
	
	- added enqueue_urgent() to TQD
	
	- added cancel(), cancel_all() to TQD
	
	- made TQD a TQQ object
	
	- added enqueue_simplex(), enqueue_simplex_urgent()
		to TQD for simplex request handling

	- added listen(), ignore()
	
	- added ListenerRequired, MaxPending constructor hash
		arguments
	
	- added class-level versions of wait(), wait_until(), wait_any(),
		wait_all(), etc. to support waiting on multiple queues
	
	- added set_max_pending(), enqueue() block when pending requests
		exceed MaxPending count
	
	- added dequeue_urgent(), similar to dequeue_nb, but only dequeues
		urgent elements
	
	- added mark(), unmark(), get_mark(), marked() to TQD to permit 
		properties to be added to requests after they've been queued, 
		but before they've been respond()'d to.

0.10	2005-Jul-01	D. Arnold
	First release.