Fix the default alignment of the allocations.
In order to enforce this constraint:
The pointer returned if the allocation succeeds shall be suitably
aligned so that it may be assigned to a pointer to any type of object
and then used to access such an object in the space allocated.
Force all allocations on 32 bit systems to have 8 byte alignment,
and all allocations on 64 bit systems to have 16 byte alignment.
Add a test to verify that the allocator returns the correct alignments.
Bug:
26739265
(cherry picked from commit
72df6708c829a4c6494936fdfbda6dc7e68e647b)
Change-Id: I44ca8bedb1dac375087da1af3a1d7d12034e037f