Unconditional 'else' was causing breakage

While writing unit tests to make sure _sign_string works in all possible cases
I discovered that my unconditional 'else' clause was making it so that
private_key_string would never be used. That has been addressed.