Additional tests

I was getting familiar with your implementation and as a way of doing that I wrote tests to test my assumptions.

They might be useful or not, but I thought I'd share them with you.