refractoring + started working on evaluator