lockfree: spsc_queue - use raw storage
lockfree: spsc queue - use std::copy if possible
lockfree: spsc_queue - declare constant variables as const
lockfree: stack - avoid temporary copy when consuming via functor

Signed-off-by: Tim Blechmann <tim@klingt.org>
lockfree: spsc_queue - avoid duplicate code

Signed-off-by: Tim Blechmann <tim@klingt.org>