Throw exception if waiting on ObjectPool when rundown is called

A deadlock happened if rundown was called while a different thread was waiting for an object from the ObjectPool
Add test to verify ObjectPool rundown deadlock
Fix typo.
Make RundownWhileWaiting test more robust
Merge pull request #216 from leapmotion/fix-objectpool

Fix potential ObjectPool deadlock