Refactor dataset metadata and introduce plot metadata.

Introduce plot metadata and currying in drawer.
So looking through this entire function, you have to push in these 2 extra variables... 6 more times or so?