Added method to query available work
Replaced fixed wait with spin locks

While less efficient, the test code is now less fragile.
Replaced magic numbers with class variable
Added timeout to tests with spin locks
Merge branch 'master' into coverage