Big charts refactor

WIP, mostly to avoid working in the solitude :stuck_out_tongue:... but NOT for review yet.
This ought to work (untested) but it also looks very odd and unusual:
```
(scatter.title("iris dataset, dict_input")
    .xlabel("petal_length")
    .ylabel("petal_width")
    .legend("top_left")
    .width(600)
    .height(400)
    .notebook()
    .show()
)
```