In `NewAligned()` and `SizeReturningNewAligned()`, allocate enough space to construct the object, even if the caller does not need the whole tail part of the object.
In `NewAligned()` and `SizeReturningNewAligned()`, allocate enough space to
construct the object, even if the caller does not need the whole tail part of
the object.

The caller might pass a smaller size, computed as `offsetof(T, some_field) + N`
with a small enough `N`, but constructing the object should better have at least
`sizeof(T)` of space.

PiperOrigin-RevId: 370457799

google/riegeli,google/riegeli,google/riegeli,google/riegeli