getting about half of the tests to pass
adding documentation and adding fix to tests that weren't working