Learning to live together: mutualism between self-splicing introns and their hosts