added local cabal.config to ignore, optimize build
added WindowEvents to basic loop