Add a version of `@transform` that works with both DataFrames and GroupedDataFrames.
Update the readme and tests.