Add mods parameter to character callback.

This is needed to correctly and _reliably_ distinguish character events from mod+key combinations, due to the change in #40.

See the relevant discussion [here](https://github.com/glfw/glfw/commit/9c20737b60037dbbda5552a45b5af9e1314cc701#commitcomment-4744485) for context of why this is needed.

Before, there was no way to reliably ignore the x character input when Cmd+X (shortcut for Cut) is pressed:

```
0000001b to 1 at 3.602: Key 0x0058 Scancode 0x0007 (X) (with super) was pressed
0000001c to 1 at 3.602: Character 0x00000078 (x) input
0000001d to 1 at 3.742: Key 0x0058 Scancode 0x0007 (X) (with super) was released
```

After:

```
0000001b to 1 at 3.602: Key 0x0058 Scancode 0x0007 (X) (with super) was pressed
0000001c to 1 at 3.602: Character 0x00000078 (x) (with super) input
0000001d to 1 at 3.742: Key 0x0058 Scancode 0x0007 (X) (with super) was released
```