Move tests into individual files

One large file was becoming difficult to manage. It was easy to get lost in it.