Design an extensible expense rule evaluator | Rippling Interview Question