CLJ-1189: Error on destructuring with :or improperly

If the :or key in map-destructuring is not a map, or the map's keys
are not symbols, throw an exception. This avoids a lot of confusion
caused by the compiler silently ignoring easy-to-make mistakes.