The current header formatting is a giant format string that
- changes global state during the format process
- selects one of 4 different format strings and then does further
conditional logic on them
- for one value uses an argument, for others, uses global variables.
- makes it hard to understand what the header will actually look like.
Change name length to 8 while here to avoid wasting space. Change this to build up the header and return it.
This is also a pre-req to implementing TOPCOLOR from newer versions of top(1)