w32_common: show the cursor in the window border

mpv hides the cursor on a timer and shows it when it detects mouse
input. When the cursor was in the window border, it could be hidden but
it wouldn't appear again, since mpv doesn't process mouse input there.

The code used ShowCursor, which is a horrid stateful API designed for
mouseless Win16 systems that incremented or decremented a system-wide
counter to keep track of how many applications needed to display a
special cursor (like a busy cursor.) It was changed to use a per-thread
counter in Win32, so now it applies to the border and client area of
every window that shares a message loop.

Replace that with a simple flag, handle WM_SETCURSOR and use
SetCursor(NULL) to hide the mouse cursor, but only when the mouse is in
the client area. DefWindowProc will set the correct cursor on the border
as long as it isn't hidden with ShowCursor.

PowerPoint also uses SetCursor(NULL) to hide the cursor when showing a
presentation, so it's probably safe.

See http://blogs.msdn.com/b/oldnewthing/archive/2009/12/17/9937972.aspx