Don't bother tracking the compiled or core files
Improve comments and small barrier define fix
Better way to manage multi-platform defs

Instead of aggregating a bunch at the top of fuq.h break things out to
their respective headers. This will make it easier to amend in the
future.
Remove volatile

Seemed there was no reason to make those variables volatile.
Couple changes to public API

* Change push/shift to enqueue/dequeue
* Change fuq_queue to fuq_queue_t
* Rename internal read/write barrier functions
* Change max size of memory retention for single queue
Only OOM check on DEBUG build
Minor code simplification