Added tests, CI and coverage.