Some stuff

* removed useless anonymous union, code is now C99-compliant
* forward declare functions and datatypes in a header file
* getting started with window and key handling