further changes to factor infrastructure and chaingraph implementation.  You can now use the code to do inference in a CRF