Add a test to verify "close" is called in all engines on client gc

This test verifies that "close" is called in all engines when a client
is removed due to timing out. This was written while updating
faye-redis-sharded for newer versions of Faye, as it did not have the
correct behavior.