John Stewart, 7. Earl of Galloway