You can already do this if I'm not misunderstanding something.
sendfrom [minconf=1] [comment] [comment-to]
sendmany {address:amount,...} [minconf=1] [comment]
sendtoaddress [comment] [comment-to]
You just need to use the daemon.
No, the comment is only internal to your logs unless you are directly connected to the receiving client daemon, which is only
likely using the -sendtoipaddress flag that is deprecated due to other security issues.