add code quality metrics and continuous integration