Feat/test runner

Run only changed files during testing with guard. Generate coverage reports only when the full suite is being run with guard.