sort throws when confusing by with cols. Fixes #567.

This continually trips up even power users, so renaming the
arguments may a better long-term approach.
Remove some long-deprecated functionality
Join DataFrames with no non-key columns. Fixes #681. Fixes #708.
Tidy up join code
Streamline copying for Index and DataFrame, make deepcopy(DataFrame) honor contract
Refine names!, rename!, and rename for AbstractDataFrame

They now return an AbstractDataFrame rather than its Index.
rename and rename! for dfs can use all methods defined for Index.
Make rename, rename! throw, not fail silently.
Merge pull request #749 from JuliaStats/bycols

Fix a few longstanding bugs, bring a couple methods in line with function defintions