John Stewart (c1245-1298)