catch exception thrown by tryLoadLib on Windows

`tryLoadLib` uses `loadLibrary` to load DLL on Windows, which throws
`IOException` upon failure such as file not found. Currently we only
checks whether the return value is `nullPtr` or not.

This commit adds a handler that tries to catch the `IOException` thrown
by `loadLibrary` and returns `nullPtr` instead.
Merge pull request #773 from suhorng/fix/master/catch-windows-tryloadlib-exception

Catch exceptions thrown by tryLoadLib (on Windows)