Major rewrite, but completed requirements for the course project!