added codeclimate test coverage integration and broke out abilities into modules