moved the ToProg functionality into to two functions, one that fills a context, and one that translates the context info into a solver interface