Fixes for Windows 8.1 store validation

We have to clean up the DirectX memory during suspension.

Also define NDEBUG for the release cases so that we avoid the use of OutputDebugStringA
in error.c which is not allowed in Windows store apps.
Minor changes for windows 8 store validation
Clearer division in WinRT vs std C++ code

To share as much code as possible between the Windows 8 app, windows phone app
and Windows desktop app, remove dependencies of Platform and Windows::Foundation
in files that interface to mupdf and replace with C/C++ std methods.
Remove repeated NDEBUG in release preprocessor list in WinRT projects