Added ability to pass in callback to opt method to allow for propagation
of feedback at each timestep
Renamed 'bounds' to 'box_bounds'; added integral of sq errs as similarity metric
Added scipy as dependency for similarity_metrics
Removed 'init_var_ranges' attr as unnecessary if also have 'box_bounds' attr