use sys_exit when Unix.execv fail

User have reported problems related to exit hooks.
Fixes to discover.ml: calling the linker with compiler flags is bad and causes
failures under Windows.
Merge pull request #55 from XiphosSystemsCorp/winfix

Fixes to discover.ml: calling the linker with compiler flags is bad and ...
Remove use of @@ in discover.ml - that shorthand is not available in older OCaml versions.
Merge pull request #57 from XiphosSystemsCorp/winfix

Remove use of @@ in discover.ml - that shorthand is not available in older OCaml versions.
Don't throw an exception in the notification handler if we're shutting down

OCaml calls WSACleanup in an at_exit handler. If we try to send a
notification after that we get an error and throw an exception in the
signal handler. This causes a segfault.

Fixes #59.
Initialise notification byte

Avoids memory checker warning (drmemory) about reading an uninitialised
byte.
Merge pull request #61 from talex5/win-shutdown-fix

Don't throw an exception in the notification handler if we're shutting down
fix #64
Only call freeaddrinfo if job->info is not NULL

If it is NULL and freeaddrinfo is called, libc segmentation faults