Search around for correct semantics in base impl.

The base implementation needs to drive the user-visible implementations,
so it is not immediately obvious how the details should be implemented.
Fix memory leak in non-intrusive ll_queue.