James Stewart, 4th Duke of Lennox