outsourced window

it has now it's own class, can and should communicate via events.

Events might get an update...