Some refactoring done, evaluation should be more fluent know. Work still in progress