add mailto helpers

parse_mailto parses mailto strings into headers,body and
mailto_to_envelope constructs an alot.db.envelope.Envelope
for a give mailto string
interpret `compose mailto:foo@bar` commands
ensure that Envelope.body is unicode string
always return new Envelope in helper.mailto_to_envelope
non-mailto arguments to `compose` are recipients
interpret mailto and other parms to initial 'compose' separately
fix: always read remaining parms for `compose` into list
properly interpret initial_command as cmdsequence

This ensures the default initial command as given by the
`initial_command` config option will be interpreted as
command*line* as expected, and not as single command.
As a result, one can now use e.g.
  initial_command = search A ; search B

issue: #698
Merge branch '0.3.5-fix-initialcommand-698'