Add modifier keys to KeyboardKeyEventArgs

This makes keyboard handling more straightforward:
```csharp
var gw = new GameWindow();
gw.KeyDown += (sender, e) =>
{
    if (e.Key == Key.Enter && e.Alt)
        gw.WindowState = WindowState.Fullscreen;
};
```