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?
You need a test case for this part of the code, e.g. `@compat keys(Dict(3 => 4))`.