Replace fifo C API and implementation by C++

Improvements to library:
 - Replace Android atomics by C++ atomics
 - struct -> class
 - init -> constructor, deinit -> destructor
 - Avoid signed arithmetic for security
 - Fix usage in test
 - Add README
 - Improve error recovery by returning a status_t if indices are corrupt
 - Fix bug in diff when assertions enabled
 - Add local indices in preparation for multi-reader and protected pages
 - Add more documentation for internal methods

Improvements to unit test:
 - More error checks
 - Fix double delete of fifoBuffer
 - Support 8-bit wav files
 - Enable assertion checks

Change-Id: I8b391b17084084d8e692765ed210a35aaa0b6747
5 files changed