Applies further implementation of map generator.
Changes the meaning of zoom levels. The maximum zoom level of 16
is now the minimum (1 pixel per block). For the moment, the map
is fixed to generating zoom level 5 maps. This means 5x5 pixels
per block.

Implements generating of map tiles from the rendered world image.
Tiles are fixed to a size 256x256 pixels and only unique tiles
are saved. It determines if a tile is a duplicate, by storing a
list of all generated tiles, in the form of a perceptual hash.
This hash can be used to determine if a tile with a given pixel
content has previously already been stored.
Adds the 'resize' sub package. This is a third party package, which
provides Go image resizing facilities. This is required to generate
perceptual hashes for map tiles.
Removes some unused code from hash.go.
Removes the concept of zoom levels. We use a fixed zoom level of
5 (5*5 pixels per block). multiple zoom levels put a monstrous
drain on CPU and RAM, so for now we will omit this feature.
Refactors some code to use a global ZoomLevel constant, now that
we have decided to use a single, fixed value for this.