Fixes #6702 and cleanup

* Makes reinforced glass a subtype of glass, cleans up window creation copypasta.
* Cleaned up window initialization leaking outside of the window constructor.
* Removes unnecessary init_dir var from windows.


Having this as `input() as null|anything in list` will give the UI a cancel button, rather than having "Cancel" be one of the options.