Test suite

Added a lot of docstring and other documentation in the test suite. This is based on my limited understanding, as well as comments by @ouziel-slama and @adamkrellenstein .