Support versions of gcc < 4.6

GCC 4.6 accepts the earlier form without comment, but GCC 4.5 chokes on it.
Move segment2 back to segment

The structure already exceeds 512 bytes, so combine the two to make the
code look more like D1X.
Restructure struct segment to align better
Remove unused header files
Remove unused main/desc_id.h