Patch up the sign command

More automated dynamicness is better!
No longer takes bad guesses at sign type (at least not /as/ bad
guessing)
also less likely to throw huge exceptions on slightly invalid input