Refactor dataset metadata and introduce plot metadata.

Introduce plot metadata and currying in drawer.
`draw` returns value, so it's not required.