Create a basic timer:// port for Win32

Design
------

Basic usage:

    t: open timer://
    t/awake: funct [event] [print [now/precise "Timer fired!"]]

    write t [1200]
    print [now/precise "Timer created: 1200 msecs"]

    wait 2

Such a timer fires exactly once, if the timer port remains open. If the
timer port is closed, pending timers associated with the port are
cancelled.

The interface and/or dialect exposed by timer ports is still open to
discussion (see the "Todo" notes in p-timer.c for a few thoughts on
improvement). The current "WRITE + single-item block with an integer for
the timeout in milliseconds" is certainly suboptimal. Note that timer
ports are a low-level API; the timer:// scheme is expected to be wrapped
by higher-level abstractions (such as a SET-TIMER mezzanine or
functionality integrated in a GUI layer).

Implementation
--------------

Add a Win32-specific timer device (src/os/win32/dev-timer.c), which
implements the OS-dependent parts using the Win32 SetTimer API. A
hidden, message-only window is used to map Win32 timer messages back to
their originating R3 timer devices.

Add an OS-independent timer actor (src/core/p-timer.c), which implements
the user-level WRITE actor. WRITE is the only user-facing action
(besides the standard OPEN, OPEN?, and CLOSE) currently supported by
timer:// ports.

Wire those parts up:

- List p-timer.c and dev-timer.c as sources to be compiled (in
  src/tools/file-base.r, used by make-make.r).
- Declare constant for low-level timer device (src/include/reb-device.h)
- Add low-level timer device to list of devices (src/os/host-device.c)
- Register interned TIMER word in src/boot/words.r
- Call port/actor initialisation code (in src/core/c-port), to associate
  the native actor with the 'timer symbol.
- Define a timer:// scheme using the native 'timer actor (in
  src/mezz/sys-ports.r).