Revamped Dataset.rename and DatasetArray.rename

For consistency, I renamed Dataset.renamed to Dataset.rename (most of our
functions to modify datasets and return new updates are not using the past
tense) and modified DatasetArray.rename so it can take a name dictionary, just
like Dataset.rename.