Removing/initializing class attributes.
Fixing initialization of private queue and processor.
Checking removal success with asserting.
Triggering full collections less often.

They are only triggered now when there are no active processors
and the processors' qoqs are empty.
Using a more safe has_client scheme.

Has client is now true when the thread starts, only turning to false
when it enters the application loop.
Adding an is_empty() to qoq.

This is used in the check for when to trigger a GC.