engine.py: Releases semaphore and return if stopping on poll.
engine,util: Add and use AdjustableSemaphore.

Re: chfoo/wpull#93
Merge branch 'issue/93-concurrency' into develop

Conflicts:
	wpull/util.py
	wpull/util_test.py
changelog: Adds entry about Engine's use of AdjustableSemaphore.