archive action improvement

This commit add an option to keep the folder structure in the archive
folder. If checked the message are moved in the folder composed by
the archive folder and its current folder.

This commit add an option to mark the messages as read when archived. If
checked the message(s) are flagged as SEEN.
`String archiveFolder = archiveTopFolder;` is fine.