fixes #415: fix unnecessary-strict rule false positives

The rule now also detects directives that are unnecessary because there
exists another "use strict" directive in the same scope. Should also be
more efficient since it now only looks where necessary for directives.
Merge pull request #419 from michaelficarra/GH-415

fixes #415: fix unnecessary-strict rule false positives