Allow for dynamically adding, removing and clearing datasets.

Allow for dynamically adding, removing and clearing datasets on Line charts.
Allow for empty charts.
I'm not sure if assigning an arbitrary ID to a dataset is the best approach here. I think it'd be more consistent to just use indexes to remove / add datasets.

Users would always be able to look up & associate by their label if they have one.