Add more advanced version of mmap_extractor.py.

- Extract per-tile rather per-map to distribute work between threads much
  more evenly.
- Scans for finished tiles to avoid doing duplicate work (e.g. if the
  extraction is interrupted).
- Number of threads can be adjusted with command-line argument (default is
  number of cores - 1).
- Use separate thread for printing to avoid garbage output.
- Times each operation and displays remaining tile/map count.

This is applicable to all versions of cmangos.