Rewrite the template into a somewhat modern C++
As part of my implementation of the homework, I modernized the template to look more like a C++ project and not just C with classes. It should still work the same as the original template. Feel free to use it however you want.