C code tweaks.

 * Convert most of scanf -> strtou?l calls. Alas, strtonum(3) from OpenBSD is
   not portable.
 * Related error checking tweaks.
 * If do use scanf, put limits on number of characters it can read.
 * srandom() seed set with subtraction for a change (just use
   arc4random, sheesh!).
 * Much more strict parsing of signal numbers in blocksig.
 * Code fussing, etc.