For symlinks, apply the blacklist to both the source and dest of the symlink.

Summary:
(If we were really cool, we'd maybe examine every file along the
symlink chain, but this is probably good enough in practice.)

In other words: if you have foo.py -> subdir/bar.py, we will skip
linting the file if either foo.py *or* subdir/bar.py is in the
blacklist.

Here are two examples that show why we have to consider either side of
the symlink:

* foo.js -> third_party/bar.js.  We definitely want to skip linting
  foo.js, since we can't fix bar.js to be style-compliant.
* third_party/baz.js -> /usr/lib/baz.js.  We definitely want to
  skip linting baz.js, even though it's likely /usr/lib won't be in
  our blacklist.

Test Plan:
   % cd webapp
   % ln -s gandalf/cache.py foo.py
   % ~/khan/devtools/khan-linter/runlint.py -v --blacklist=yes foo.py
   <correctly says it skips foo.py>
   % ln -s instance_cache.py foo.py
   % ~/khan/devtools/khan-linter/runlint.py -v --blacklist=yes foo.py
   <correctly lints>

I also tested a symlink into a whole other repo, with its own
blacklist.
   % ln -snf ~/khan/third_party/khan-exercises/local-only/i18n.js foo.js
   % ~/khan/devtools/khan-linter/runlint.py -v --blacklist=yes foo.js
   <correctly says it skips foo.js>
   % ln -snf ~/khan/third_party/khan-exercises/interface.js foo.js
   % ~/khan/devtools/khan-linter/runlint.py -v --blacklist=yes foo.js
   <correctly lints>

I also ran 'make lint' in the webapp directory, to make sure it still
passes.

Reviewers: jlfwong

Reviewed By: jlfwong

Differential Revision: http://phabricator.khanacademy.org/D13097