N4071 Search/Search_n finished, minor changes

I've been a little caught up with school work but I finally finished some long overdue algorithms, search and search_n should be fully functional and have in-depth tests written. A short summary of whats changed:

* `search` , `search_n` implemented
  * tests
  * documentation
  * passing
* `call_with_data` added to partitioner for future use with `copy_if`
* `copy_if` test temporary disabled from being built in CMakeLists(I will continue working on it in N4071)