Sign then Encrypt

Ok. Hopefully this addresses all the past feedback. I tried to simplify the PR and still get what we need in. This one is also a prerequisite for #840 as mentioned below. @Renelvon @gubatron take a look.
It would be better to replace these `print`s with logging. That would use `self`.

Logging the signature and the data is fine. Logging the error in case of failure is bad.