Pre-heat the oven to 400?F.
Cover the onions with water. Boil them for a few minutes, then drain and cool and wipe off the skins with paper towels. For boiling onions, halve lengthwise. Smaller cipollini onions may be left whole. Set aside.
While the water comes to a boil, cut the heads of garlic to expose all of the cloves. Drizzle EVOO over the exposed garlic, then press into the rosemary to coat. Wrap the garlic in foil and roast in the oven until tender, 45 minutes.
Loosen the skin of the chicken that covers the chest and thighs and legs. Arrange the tarragon and parsley sprigs, bay leaves and thyme leaves under the skin, distributing evenly around the bird. Rub 4 tablespoons of softened butter all over the bird skin, then season liberally with salt and pepper. Arrange the potatoes, onions and carrots in a roasting pan. Settle the bird over top of the potatoes and vegetables. Roast for 1 hour and 15 minutes, then switch on the broiler to crisp the skin, 5-8 minutes.
When the garlic is done, let cool until it’s cool enough to handle. Squeeze the garlic cloves out of the skins and mash into a paste.
In a saucepot, melt the remaining 2 tablespoons butter over medium heat, then stir in the flour. Cook for 1 minute, then whisk in the stock and season with salt and pepper. Bring to a boil and whisk in the mashed garlic. Let thicken for 5 minutes, then add the cream and reduce the heat to low.
Remove the chicken from oven and carve. Fold the spinach into the vegetables to wilt. Serve the vegetables and chicken with gravy on top.