Added tool for drawing Rules.txt and Blends.txt colors into a map.
Improvements to BMP editing.
Added saving and loading .tmx BMP data.
Merge branch 'zomboid' into blendtool
Refactoring etc to the BMP stuff.

New AbstractBmpTool base class for all BMP tools.
Added BmpSelectionTool for selecting and dragging BMP pixels.
BmpSelectionItem displays the BMP selection.
New MapBmp class holds the BMP image and grid of random numbers.
Resize BMP images when a map is resized.
Adding/renaming layers affecting the BMP now updates the display.
Use #define WORLDED to keep code in sync with WorldEd.
Give a better error message when reading Rules.txt/Blends.txt fails.
Work around an MSVC compiler bug with template classes.
Better drawing behavior for BmpPainterTool.

Like the stamp brush, the BMP painter draws a line between the previous and
current tile position to compenstate for rapid mouse movement.
Set random seeds for BMP images when creating a new map.
Created nicer bmp-tool icons.
Added BmpRule,BmpBlend,BmpRulesFile,BmpBlendsFile classes.

TMX files are going to keep a list of rules and blends.
Merge branch 'zomboid' into blendtool
Maps keep a list of rules & blends and the *.txt files they came from.

Rather than reading Rules.txt and Blends.txt from a default location,
each maps saves its own rules and blends. The rules and blends are saved in
a .tmx.

The Rules.txt and Blends.txt filenames are saved in a .tmx relative to the
.tmx.

BmpToolDialog has buttons for reloading/importing/exporting Rules.txt/Blends.txt,
all via undo/redo.

MapDocument creates its BmpBlender now, possible since BmpBlender is no
longer responsible for reading Rules.txt/Blends.txt itself which had to be
done outside the MapDocument to handle errors.
Moved BmpBlender from MapDocument to MapComposite.

BmpBlender now handles tilesets being added and removed.
Fixed Map::clone() not cloning any of the BMP stuff.
MiniMap draws BMP tiles.
Added more robust error-checking of Rules.txt and Blends.txt.
MapImageManager loads tilesets needed by BMP layers too.
Update MapComposite's BmpBlender when a loaded map is recreated.