feat(transpiler): Transform for..of to Dart as for..in

Added transformation of for..of into Dart for..in.  
Added error for JS for..in since the semantics don't match.  
Added error for for..of utilizing destructuring declarations.

Closes #53 
My idea was to create a ForOfTransformer that would transform

```
// <target> is a placeholder here, could be item or [a, b, c], ...
for (<target> of iterable) {
 // ...
}

// to 

for ($tmp in iterable) {
  let <target> = $tmp;
  // former body
}
```

If `target` is a single var, the code would work.
if `target` is i.e. `[key, value]` the code would not work for now because we do not have a destructuring transformer for now. But as soon as we add this transformer (it should be executed after the for..of transformer) things will work.

Do you think it makes sense ?