Feature/cover with tests

I added a lot of tests, but we're not at 100% coverage yet. There are some things I still need to work out, but this is a big enough fix/addition that I want to go and get this merged so future work can be done by looking and how these tests are set up.
Can you use an absolute path from the top level instead of a path relative to the current directory? Obviously not critical, mostly just wondering.