base window class