Simplify the malloc_info structure containing the metadata of a given block in mmalloc
* Less structures in union in structure in union inception madness
We're using a less portable anonymous union, but gcc handles that
since maybe 15 years, so that should be cool.
* We can now determine from looking at it whether the block is busy or
free, without having to search in which list the block is.
That was useles to other usages of mmalloc, but this is very
interesting when comparing heaps.
Moreover, it comes for free: it has exactly the same (memory) cost
when the block is busy, and we have a plenty of place in the block
to store that this it free when it is actually free.
Please note that this information is not updated when the block is
freed yet. (splitting the commit just in case someone tries to read it
later: this one is almost automatic refactoring)