Uh, big changes that I was bad about committing incrementally. Maps
Add very slow-to-render trees in the map screen.
Overhaul drawing: switch to a Mesh instead of a thousand Rectangles.
Extract logic to constrain a line segment within bounds to a function.
Add unit tests for constrain function and fix the bug they revealed.
Reduce redundancy in constrain().
Draw trees from back to front.
Reorder widgets, don't make MapFeatures inherit from MapOverlay.
Remove area_screen subdir for now.
A whole bunch of changes.

Mostly fixes to the area screen to allow it to show walls, edges,
vertices and the player.
Also, specify paths to resources as absolute paths given a project root.
Merge changes from master.
Merge all updates from master.