add exception for bad dimensions in dataset reduce method
iterate over dataset.variables in reduce
Merge branch 'dataset_reductions' into enable_keep_attrs

Conflicts:
	test/test_dataset.py