Ethan Archer's Completed Code

All tests are green and working and the code has been fully commented to explain how it works.