I think you still need to have a transport agent like postfix or sendmail running in the background, but then you can use the client of your choice. You can use something like nail, which supports attachments. I've successfully sent messages to my Outlook account at work with very little configuration.
My gmail account is another story. I've tried to configure it per the man page, but:
<<< 550-5.7.1 [220.127.116.11] The IP you're using to send mail is not authorized
<<< 550-5.7.1 to send email directly to our servers. Please use the SMTP
<<< 550-5.7.1 relay at your service provider instead. Learn more at
<<< 550 5.7.1 http://mail.google.com/support/bin/answer.py?answer=10336 11si1238612gxk.10
554 5.0.0 Service unavailable
. There is probably a way to configure nail using a legitimate isp account, but I haven't figured it out yet.