FIX: room is initialized with correct dimensions

The room is now initialized with the correct dimensions. Before the room
was set to an arbitary size and some of the blocks could be failed to be
written to the map (because it might be too small). Furthermore, blocks
that could not exist could theoretically be updated because the map
could be bigger than the one in reality.

It's a bit of a patch because it's quite messy.
Update dll
Merge pull request #21 from Decagon/bugfix-map-incorrect-size

Bugfix map incorrect size