Allow no shutdown timeout with `WorkerPoolSpy`

This updates the `WorkerPoolSpy` to allow not passing a shutdown
timeout. This is how the real `shutdown` method works so this
should match it.

This also updates the assert dependency to the latest.