Also include the ability to do the same in shared mailboxes, not just own mailbox.
Office365.Move() should also have an additional optional parameter CreatePath: true/false.
If it is set to true, when trying to move an email message to a nonexistent folder, the folder path would automatically be created and the message moved to the destination.