add support for code coverage
remove redundant code
update packages