CC: Rewrote Init_Struct to improve anonymous structure/union handling.

Anonymous structures/unions are now stored as an InitMem marked as being anonymous. This increases the complexity of accessing a sub by index, but makes the InitMem tree match the IR expression tree.
Also split off special handling for unions to Init_Union, to simplify the functions where a special case is needed.
This should make initializers fully compliant. This time for sure!