fixed some bugs, added a usable evaluator