misc fixes

flooding temple room caused a crash, and spawn points near overmap boundaries did as well. This fixes those.

The vehicle part cache optimization seems to speed things up a whole lot. I'm not sure whether memset is right to use in the map constructor, or the vehicles cache affects tinymaps.

Also, this fixes a skill.h compiler error with gcc.