* use source_dataset.output_dtypes to yield correctly typed output dataset * add test and fix issue introduced by 2a6c5998