Improved send() implementation to be more clear, and covered also a
missing case where the callback may have not been notified.