Adding tests

This is a (very) rough draft of how the tests are shaping up.