Today I am finally finishing the Snake project after a lot of confusion, I even got stuck for a while.
When I got stuck, I broke all the classes in my code apart and then put them back together, and I think that really helped me understand the project better.