add another implementation of gitignore that will have zero dependencies, and lay out future test cases