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.

Fixes #415.