I know I can *re*name columns after I aggregate the data:
blubb <- aggregate(dat$two ~ dat$one, ...)
colnames(blubb) <- c(\"One\", \"Two\")
The answer to your first question is yes. You can certainly include the column names in the aggregate function. Using the names from your example above:
blubb <- aggregate(dat,list(One=dat$One,Two=dat$Two),sum)
I like the part about possibly pulling in the original column names automatically. If I figure it out I'll post it.