To make the stuffing, melt the butter in a large saucepan, add the onion and celery, and cook gently for 10 to 15 minutes, until softened. Remove from the heat, add the apples, chestnuts, herbs, lemon zest, bread crumbs, and egg, season well, and mix thoroughly. Let cool.
Preheat the oven to 425°F.
Layout the boned pork shoulder, skin side up, on a work surface. If the butcher hasn’t already done so, score the skin at ½-inch intervals with a sharp knife. Turn the meat over and spread the stuffing evenly over the flesh, leaving a margin around the edge. You will have some stuffing left over - this can be packed into a buttered ovenproof dish and put in the oven for the last 30 minutes of the pork’s cooking time. Rollup the meat and tie securely in several places with string. Put it into a smallish roasting pan (this ensures the juices don’t reduce and blacken too much) and tuck the thyme underneath it. Drizzle the oil over the skin, season well with salt and pepper, then massage the oil and seasoning into the skin with your fingers. Put in the oven for a 30-minute “sizzle.”
Remove from the oven, pour the cider and a glass of water into the dish, and turn the temperature down to 300°F. Cook for another 4 to 5 hours until the meat is very tender, then raise the heat to 375°F and roast for another 20 to 30 minutes to crisp up the crackling. Transfer the pork to a warm dish and let rest, uncovered, in a warm place for 20 minutes.
Pour off most of the fat from the roasting juices in the pan. Place the pan over low heat, sprinkle in the flour, and stir it into the juices to form a smooth paste. Add as much stock as you need to form a thin but tasty gravy, bring to a simmer, and cook for a few minutes. Taste and adjust the seasoning, then pour into a warm gravy bowl.
Cut the crackling from the pork and break it into large pieces. The pork should be tender enough to spoon or tear into thick shreds. Serve with the crackling, gravy, creamy mashed potatoes, and sautéed leeks or shredded savoy cabbage (or both).