Refactoring: Move VectorOptimizers each to own class