add window resize, improve signal handling