button and window class implemented