focusedWindow

This patch splits the notion of the current window into `currentWindow` for drawing, and `focusedWindow` for the currently focused window.

- Overloads basically all the `get/setWindowXXXXX` methods with a version that takes a `windowNo` argument. The original versions remain intact as oF calls them, these will always act on the `currentWindow`.
- Event callbacks are modified to set the `focusedWindow`.
- Resize callback fires for all windows, not just window `0`
- Motion callback doesn't set focused or current window, only sends for currently `focusedWindow`
    - There is a strange bug here, where if windows are created programatically (including loaded from settings), the motion callback will fire for multiple windows until window `0` is switched to. I couldn't find any way of forcing this to happen, so instead a check is included in `motion_cb` that the window making the call is focused.
- Proper fullscreen (no menu bar) now affects all monitors on OS
- Expands the `WindowManager` API to make it easier to set titles, positions, shapes, fullscreen.
    - This could be greatly expanded to make many methods easier, to access, avoiding `getWindowPtr` entirely
- Example updated for new methods

In general I think that the multi window API could be improved, we are currently working around the legacy of a single window. In particular the events should return a `windowNo` along with their values.

**Untested on Windows or Linux, should work in theory ;)**