Add CHECK_HEAP_ALIGN to perform runtime alignment checks

Adds a much cheaper CHECK_HEAP_ALIGN option to do heap access
alignment checks.  Less extensive than SAFE_HEAP, but also much
cheaper.
Merge pull request #884 from vvuk/check-heap-align

Add CHECK_HEAP_ALIGN to perform runtime alignment checks