This patch adds warnings for duplicate keys in *CASE forms.
It does not attempt to check for nontrivial unreachable TYPECASE cases.
Unlike my previous attempt, this is not O(n^2), and reports exactly
which clauses are duplicates.
The duplicate key condition :report function needs some formatting
improvement, but I don't know how to use the pretty-printer.