This entire class should be shared & take an `LintRunnerBase` as a parameter.