Outer scope shadowing

Solves issue https://github.com/jshint/jshint/issues/350

`shadow` supports `outer` and `inner` params.