John Stewart, 7.º conde de Galloway