add compose and send functionality