first commit of the massive refactoring of the decisionengine