Allen throws for 2 TDs, runs for 2 scores to lift Bills to 48-42 win that snaps Lions' streak