Refactored Window.hpp