remove redundant set_skip_steps and add non-deprecated constructor
add missing #include
expose function
remove extra parens
make sure simulator calls start and stop optimize

close #481
clean up tests a bit, they still make very brittle assumptions about exactly when optimizer states are called