Add ＠compat as discussed in #8

At present this doesn't try to do anything about `AnyDict`, since it's not exported from Base, but that would be trivial.

I'm not sure what to do about the old macros. Is it silly for them to print deprecation warnings?
Are macros allowed to modify their arguments?