added unit tests, updated walkthrough