improve code structure

move window related stuff to its own unit

give unions names

(0) -3 +3 +10 +30 tip

mercurial