744 - Projectors w/data arg takes 1st datum - area/line 

Close #744.
This function appears to change `attrToProjector[attribute]` from `(data: any, i: number)` to `(data: any[], i: number)`. Calling this function multiple times will make expect deeper and deeper arrays, like `(data: any[][], i: number)`. And it can be called a lot of times, because it's called in `_paint`.

I think you could make this code mess up by rendering more than once, e.g.
```javascript
plot.renderTo(svg);
setTimeout(function() {
   // setting it to the same data to trigger re-render
   plot.data(data);
}, 1000);
```


Do you understand the problem here? Maybe I'm misunderstanding the code, but I think this is a bug.