Fix a number of crashing bugs

These were mostly due to failed assumptions like the scene data not
being loaded when calibrating projectors. There was one vector
normalization without first being checked for zero length.
Fix some inconsistencies with the UI

First use of a C++11 Lambda!
Set visibility of new projector windows when they're created