encapsulated test suite, added gitignore for cache directories