Changed ports to be drawn based off vertex data, not tile data. Moved canvas finding code out of map.js:draw(). Added window resize detection and canvas resizing to compensate.