Rule: No shadow (Closes #237)

Closes #237 I had a few issues with this rule. First of all, I had to change getScope slightly. Now if you try to get the scope while current node is function declaration it will get the scope of the function, and not the global scope. I can see how both ways are valid, but we have no use case for the old behavior and I couldn't find a way to get function scope with the current code.
Second issue was that I could not get JSHint or JavaScriptLint (I know it also has the same rule) to fail with shadow error. So I couldn't copy jshint error message, and I couldn't verify if naming attributes in a way that would cause shadowing is considered a problem. Let me know if you think that I shouldn't exclude attributes from this rule. I don't feel strongly either way.