update to the stopping criteria codes: 0 and 1 means success, anything >=2 means partial success, anything < 0 is an error
added stopping criteria based on user set max iterations and max function budget
reverted static threshold in automaxiter stopping criteria in order to be able to reuse criteria across sessions
improved output of failed tests on functions in exe