Fixes bug when processing doors, separates pin drawing

In separating things out, I inadvertently broke door processing. I didn't catch it because I had it cached on my end. Lesson learned!

The other (more verbose) commit in this pull request moves location pin drawing into its own function, to facilitate the placement of pins in locations other than the start point (e.g. at the endpoint, or maybe places of interest)