Add dir name to ignores. Fix bug where multiple paths could cause root_ignores to leak memory or behave weirdly.
Separate ignores that start with a slash from the rest. We'll need to search them differently.
Fix segfault. Initialize slash_* and search some of the slash patterns.
Add tests for some ignore issues

There are many other uncaught bugs, but this catches bugs corresponding
to a few open issues
Merge branch 'master' into deep_ignores
Merge remote-tracking branch 'origin/ignore-test-cases' into deep_ignores
Add abs_path to ignore struct.
Use ignore's abs_path to obey some ignores with slashes in them.
These debug statements are stupid.
Turns out dirent.namlen is a bsd-only thing.
Obey some more matches that we should be obeying.
Clang-format
Disable some failing test cases for things we're not done with.
Merge pull request #501 from ggreer/deep_ignores

Deep ignores