Add conditions to `is_algorithm_suited` to limit integer and mixed problems
Currently, there is no verification of the algorithm that a user wants to use when implementing disciplines with integer variables or a mix of integers and floats. The static method is_algorithm_suited
in OptimizationLibrary
should be in charge of this.
There are certain situations in which the user may want to force an algorithm even when our defined conditions are not met, in that case, we could include an additional attribute to achieve this. In this particular case, a warning should be printed to inform the user that he is currently running an algorithm that is not suited to the problem.