Compliance with RFC 5322 (Internet Message Format):  use "-0000" instead of "+0000" to indicate a time zone at Universal Time ("-0000" means that the time is generated on a system that may be in a local time zone other than Universal Time); also remove the Sender: header.
When a line in the body of a control article started with "Sender", a bug in signcontrol.py prevented the article from being properly signed.
Use local time instead of UTC (thanks to Adam H. Kerman for the suggestion).
Add flags to gpg when called:  --emit-version, --no-comments, --no-escape-from-lines and --no-throw-keyids.  Otherwise, the signature may not be valid (thanks to Robert Spier for the bug report).
Automatically generate an Injection-Date: header field, and sign it.  It will prevent control articles from being maliciously reinjected into Usenet, and replayed by news servers compliant with RFC 5537 (that is to say without cutoff on the Date: header field when an Injection-Date: header field exists).