In a very large bowl, whisk together the soy sauce, honey, sesame oil and half of the ginger. Put the turkey in the bowl, breast side down, and marinate at room temperature for 45 minutes. Turn the turkey and marinate breast side up for 15 minutes.
Preheat the oven to 350°. Set a rack in a large roasting pan. In a small bowl, combine the salt, pepper and five-spice powder. Remove the turkey from the marinade; reserve the marinade. Set the turkey on the rack, breast side up, and season it inside and out with the salt mixture. Stuff the cavity with the scallions and the remaining ginger. Turn the turkey breast side down on the rack. Add 2 cups of water to the roasting pan. Loosely cover the turkey with a foil tent.
Roast the turkey for 4 hours, basting with some of the reserved marinade every hour and adding a total of 3 cups of water to the pan during roasting. Turn the turkey breast side up and baste well with the reserved marinade. Roast uncovered for 30 minutes, basting once halfway through cooking. The turkey is done when an instant-read thermometer inserted in the thigh registers 165°.
Carefully pour the juices from the turkey cavity into the roasting pan and transfer the turkey to a carving board. Let rest in a warm place for 30 minutes.
Meanwhile, strain the pan juices into a large saucepan and skim off the fat. Add the chicken stock to the juices along with 3 cups of water and bring to a boil.
In a medium bowl, blend the butter with the flour to make a smooth paste. Gradually whisk in 2 cups of the hot pan juices until smooth. Whisk the mixture into the saucepan and bring the gravy to a simmer, whisking constantly, until thickened. Simmer the gravy over low heat, whisking occasionally, until no floury taste remains, about 8 minutes. Carve the turkey; pass the gravy at the table.