Don't treat a shop with "trap" in the name as a trap (wheals)

dat/des/variable/grated_community.des:69:
   bad trap name: 'armour shop name:the_legendary_astrapp [...]

Likewise other features with "shop" in the name.  Also, remove the
not-really-supported "store" alias (which parse_shop just barfed on).
Refactor keyed_mapspec::parse_feature.
Reinforce that DNGN_UNSEEN should be 0.

We make that assumption in several places (including one I just added,
but also others).