Replace LTQ/CLQ with elimination stack

A lock-free treiber stack backs off to the elimination array, which
borrows optimiztions from j.u.c.Exchanger. An elimination stack avoids
contention by allowing a thread performing a push to cancel a concurrent
thread performing a pop. This exchange occurs in an elimination array
when contention is observed on the stack. When successful neither thread
mutates the stack and higher throughput is achieved.

This is a work in progress. For example, the time-to-idle policy needs
to be updates to be tolerant to running tasks out of order.
Replace Guava with CLHM & CHMv8