#3: Init test infrastructure with coverage support

Test with about 80 percent coverage
#3: Update classes diagram

Test with about 80 percent coverage
#3: Add test specs for all current known methods

Test with about 80 percent coverage
Merge branch 'feature/3-init-tests' into develop