Move send message logic into daemon
This prevents incomplete sending of a message if the client app gets closed or switched to a different conversation during the message sending process.
This prevents incomplete sending of a message if the client app gets closed or switched to a different conversation during the message sending process.