Michigan offense puts together most complete game of season in 45-7 rout