Added `window::stop()` (sets GLFW close flag). Updated
signal/timer handlers and Q key check to call it instead of
using a separate `quit` bool in main().
This encapsulates the close state in the window class (no
more external flag + manual checks). The render loop is now
simpler.
(The process_signals lambda and ASIO duration timer are
retained.)