Prevent multiple reports of a single exception

Each reported exception is stored in a buffer of reported exceptions.
We uses Object.equals() method to determine if exceptions are equals.

Each thread has own buffer of reported exceptions. We must
not compare exceptions from different threads, otherwise we get
java.lang.StackOverflowError.

Closes #11
Fix warnings
Fix a typo in a test case output
Disable unnecessary log output in release build

Closes #13
Enable rpm build check
Disable unnecessary so versioning
Make Test class independent on remote resources
Do not install versioned shared library