Magnus III. Švédský