WINDOWS: fix #1822 (aligned malloc)

@JeffBezanson Does this patch seem agreeable to you?

The summary of it is that I assumed everything in the gc was allocated by the gc, or arrived via `jl_gc_acquire_buffer`. If it was allocated by the gc, we can assume it is aligned for the call to free. If it was acquired by gc, we assume it wasn't aligned.