Refactor type 2 message decoding, drop any extra lines from subject.
This allows other clients to insert headers in extra lines of text between
the Subject and Body fields of the message, as discussed on the 24x7 mailing
list. The PyBitmessage client was never able to meaningfully display
multi-line subjects, so this does not break anything. The extra lines are
thrown away and never stored anywhere, so this also protects against
watermarking attacks.
Merge pull request #295 from grbitmsg/single_line_subject

Refactor type 2 message decoding, drop any extra lines from subject.