DovBear has a shocking post on what may be the true reason Sarah threw Yishmael out:
By far, the most surprising opinion can be found on the Bar Ilan website, where Dr. Joseph Fleischman argues rather convincingly that Yitzchak was sexually abused.
And Dr. Fleischman's proofs are quite strong, as one can see from reading the linked article, including the opinion of Rabbi Akiva, who argued 1900 years ago for this exact position. Rabbi Akiva did not have our knowledge of ancient semitic languages to back up his argument. If he had, the story of the expulsion of Yishmael would have taken its place alongside the (date) rape of Dinah as a paradigm of sexual abuse and response. Maybe now it will.