Revert "Revert "Match whitelisted files using fnmatch""

This reverts commit 91be9f5344d5931ddae6e4f905c18a607fa9e9f1.
Revert "Revert "Whitelist OSXFuse headers""

This reverts commit f96ed45fe19855d0f8acc37d5d77d16d607dfce3.
Revert "Revert "Simplify unbrewed file whitelists""

This reverts commit 338a451a47c884eb9ca96d7b0023417a1eaa4d3d.
Revert "Revert "Whitelist MacFuse headers""

This reverts commit e81b82cc725ede00c1292a50a076bb8a652ccecd.
Make sure the directory exists before chdir
Add include-what-you-use

Builds against clang 3.5. See [their homepage][1] for more information.

[1]: https://code.google.com/p/include-what-you-use/
Add symlink to handle builtin headers

IWYU complains about not being able to find standard headers which are
built into Clang. See the [the Clang documentation][1] for more.

Also fixed some path problems.

[1]: http://clang.llvm.org/docs/LibTooling.html#libtooling-builtin-includes
include-what-you-use: add 0.3 bottle.