Improve cube API default values, typing, docstrings
Problem description
Currently the expected input for cube functions is not very clear, as a first-time user.
For example, for the function https://github.com/JDASoftwareGroup/kartothek/blob/4008de4436dde947faa3979f3ccf035f99c955c0/kartothek/io/dask/bag_cube.py#L451 we don't define the expected type for remove_conditions (which downstream appears to be Union[None, Condition, Iterable[Condition], Conjunction]). And we type ktk_cube_dataset_ids as Optional[Iterable[str]] but we don't set any default value (which apparently should be "all").
Also, it's not really clear what a " Ktk_cube dataset IDs " means. Is this the same thing as a kartothek dataset UUID ?
This is just a single example. I think there's room for improvement here without the need for major breaking changes.