Add unit tests and coverage
Overall improvement of the code
Sonar remarks processed
prepare for integration testing