Store crash logs in the user data directory, not the app directory.

The app directory is more likely to be unwritable (and wildly in
appropriate, e.g. on Linux where it's /usr/bin).
Simplify the archive tab closing defenses a bit.

Deleting a tab that's already being deleted turns out to be fine.

Storing the entire dependency list of archives is unnecessary, because
closing the topmost one will automatically close all the children
anyway.
Check a propgrid prop for unspecified before trying to cast.
Fix some format specifiers.

Not a big deal and generally just in log messages anyway, but wxWidgets
pops up big angry dialogs complaining that assertions failed in debug
builds, which is super annoying.  :)

Mostly fell into two categories:

- Vector sizes and other uses of size_t (notably, map object IDs) should
  be unsigned long, %lu.  This is still slightly questionable, but far
  less so than %d, and empirically it appears to work fine on both
  32-bit and 64-bit builds.  Technically size_t could be even bigger, but
  offhand I can't name a system where either size_t or long long is
  wider than long.

- Various unsigned locals should be %u.
Fix creation of new maps in a directory.
Fix assertion error when trying to show an archive's path sizer.

The path sizer is actually a grandchild of the panel's sizer, so we need
to use GetItem() with the recursive argument.
Merge pull request #129 from eevee/misc-minor-fixes-2

Misc minor fixes, round two