Declare FOROF temporary variable in the closure

I don't see any reason why it would need to be declared in the outer scope (and I have a stupid reason for preferring it in the inner scope: a my jshint version has a bug that makes it think the variable is global when it's not in the inner scope)

Example before:
```
$ bin/coffee -ce 'd = (v for v of {})'
// Generated by CoffeeScript 1.7.1
(function() {
  var d, v;

  d = (function() {
    var _results;
    _results = [];
    for (v in {}) {
      _results.push(v);
    }
    return _results;
  })();

}).call(this);
```
Example after:
```
$bin/coffee -ce 'd = (v for v of {})'
// Generated by CoffeeScript 1.7.1
(function() {
  var d;

  d = (function() {
    var v, _results;
    _results = [];
    for (v in {}) {
      _results.push(v);
    }
    return _results;
  })();
}).call(this);
```

I have not looked at the test system yet, but I can try to make some tests if you think it is useful