Changed evaluator to return an EvaluationResult (fixes #5)