mape: Don't hold the GDK thread lock (#1091)

The lock was from times when the GTK+ widget was updated directly
from the render thread, but this is not the case anymore, so it
can be removed without substitution.
Ship a fallback natupnp.h

MinGW doesn't bring a natupnp.h out of the box. Add one to the repository
so MinGW builds also support UPnP/NAT-PMP.
Only fallback to natupnp.h on Windows
Change WinAPI structure zero-initialization style

Since G++ complains about zero-initialization of POD types via
Foo foo = {0}, use auto foo = Foo() instead.