First half of new optimization API
More work on new optimization API
New API design finished
Fix missing keyword arguments
Fix state traces
Merge pull request #17 from johnmyleswhite/mutate

[RFC] New Optimization API