My final project for the CS50x course.