problem 4 updates & cleanup.
solved problem 7
solved problem 8