Put comment lines after header for io.ascii commented header writing

This is a continuation of #3222; I finished the comment writing code and switched the order of the header and commented lines for commented-header format.
@taldcroft, @hamogu - is this okay?
Do you have an exact list of writers for which this change applies?  Is it all fast writers and all `Basic` subclasses?  It would be good to provide this information, hopefully in a somewhat-compact way for CHANGES.rst.

I think the detail about where comments are output is not required here.  The upshot is that everything works like one would expect for the particular format.