finished optimizer interface
Added Optimizer for testing
fixed default optimizer to work with new abstract class