Implement some usefull optimization methods and make it modular for testing
Implement some usefull optimization methods and make it modular for testing