Refactor: move full method into flushable queue
refactor: self is superfluous
bugfix: continue processing hash when one queue is empty

This bug has been around for a while now. I suspect that it is rarely the case payloads is nil or empty.