TODO
----
+- Check if it's thread-safe
- Add mutex to avoid issues when two processes are modifying the same file.
- Handle permission issues with .xattr files
-- Add options to:
- - Change extension name of sidecar files
- Code Quality
- - Valgrind support
- C unit tests
- Valgrind report on travis
- Upload travis generated code coverage somewhere