Assignment 4.1

Also has changes that were suggested for README.md and assignment 3.1.
much better but i still think this can be simplified. instead of `if` try just `return`