move generation to a task
Add Parser::{skip_str, is_eof}
move constraint checking to gen task
make TrainProgram work and fix warnings
Stub out trainer solving and add some TODOs.
Add a "JIT" that compiles an expression to ~fn()'s.
Use `uint` for the idents; 10x faster with the compiled ones.
Finish the parser.
Convert the operators constraint to use an enum rather than a string; pprint ids properly.
Missed a spot.
/guess, /eval interaction for the train endpoint.
Fill in an api for interacting with the myproblems endpoint.
Allow adding more constraints to a running generator.
Flatten the generator scope into a single vec.
Seitch from HashSet to OperatorSet.
fix bench code
Parser cleanups
solving real problems!