refactor evaluation out to TariffEvaluator