Refactor dataset metadata and introduce plot metadata.

Introduce plot metadata and currying in drawer.
We decided that keeping all parameters required will make sure that every function will have access to all information.