clean up some crashes, lay groundwork for overlay ScreenToPoint