split out classes to files and added in window scaling