refactor: extend local search to accept any inputs Instead of accepting only BinaryString, accept anything. Extend the operators to accept anything.
tests: move all tests to separate submodules
tests: add rosenbrock test
chore: guard test imports by #[cfg(test)]
chore: split types and functions to separate module files