Big charts refactor

WIP, mostly to avoid working in the solitude :stuck_out_tongue:... but NOT for review yet.
Another option, that would require changing the interface, would be something like this:
```
scatter(x, y, 
    config()
        .title("iris dataset, dict_input")
        .xlabel("petal_length")
        .ylabel("petal_width")
        .legend("top_left")
        .width(600)
        .height(400)
        .notebook()
        .show()
)
```
i.e. decouple the configuration build-up and pass the whole resulting configuration in as single parameter. That's kind f nice, actually