posix_memalign on OSX does not conform for zero size
Use _aligned_malloc for all MSVC-compatible compilers

Any compiler pretending to be MSVC should implement _aligned_malloc/_aligned_free. In particular this includes Intel Compiler on Windows and (in the future) Clang. These compilers reuse MSVC CRT, which implements these functions.
Use POSIX allocation from OSX 10.9
Update documentation and correct spelling