Simplify code
Refactor
Refactor
Refactor
Refactor
Refactor
Use universal references to pass functors
Ensure noexcept defaulted move operations
Add note
Improve move
Prepare the new makefile build system

Integrate replacement for tests
Prepare makefile
Fix compilation and add link steps
Complete make file
Complete the makefile
Add cppcheck target
Create target for doxygen generation
Add new custom targets
Remove CMake
Definitive name for makefile