Make boundary at MimeMessage::new* functions.

This should mean that we don't need to have as_string() as mutable,
fixing #4.
Add function to MimeMessage to support updating based on state.
Add semicolons after macros that expand to items.
Merge branch 'bug/message_mut_as_string' into develop
Final multipart boundary should have a "--" at the end.
Update lazy_static requirement because of macro change.