Feature/add test descriptions

Add descriptions to code.

DO NOT PULL REQUEST YET. I'll go through all the tests and update them. I may also see if I can get the test runner into npm.