StateGraph: simplified many method signatures
replaced EMPTY_RULE with null
StateGraph extra constructors for easier unit testing
StateGraphTest