#12 moved visibility cache from portals/bsp nodes to a separate class, held by Camera. This should allow multiple cameras later