+ Use copy-swap idiom for assignment operators + Update and organize CMakeLists subdirectories for algorithm examples
+ Using the pseudocode examples from MIT introduction to algorithms