Preheat oven to 350°F. Set turkey on a rack in a large roasting pan and scatter the turkey heart, gizzard and neck, sliced celery onion and garlic and herb sprigs all around. Season turkey with salt and pepper. Add 2 cups of water to pan and roast turkey for 1 hour and 15 mins. Add remaining 2 cups of water to roasting pan.
Cover turkey with foil and roast for 1 hour and 15 mins, or until instant-read thermometer registers 170°F in the thickest part of the thigh. Transfer turkey to a cutting board, and let rest for 30 minutes. Strain the pan juices into a heatproof measuring cup, pressing on the solids and skim the fat. Pour the pan juices into a medium saucepan. Add 4 cups of turkey stock and boil until reduced to 5 cups, about 10 minutes. In a bowl, whisk the flour with the remaining 1/2 cup stock, then whisk the mixture into the stock. Boil, whisking, until the gravy is thickened. Carve turkey and serve with gravy.