Port draw_image()

Ports draw_image() to draw_board_image(game_board, rooms). draw_image() poked
in to the core data to pull the list of rooms and a representation of the
current board state. I've ported that code into a function which takes those
inputs as args to make it more testable.

test_draw_board_image() uses empty location data; this is the same as the
start of the game. Code copypasta'd from the old initalize_game_board().

Still to do with this:
- Confirm we're correctly displaying this on the frontend
- Symlink a "static/latest.png" to the last created board
- Update template to use latest.pnge
Symlink latest.png -> last generated board image

Finishes up the TODOs from my previous commit. Only needed to do the symlink
on the python side because I had already made the template point to latest.png.