1. Pour the milk into a pan and add the bay leaf, onion if using, and a twist of pepper. Bring almost to the boil, turn off the heat then leave to infuse for 10 minutes or so while you cook the spinach.
Bring a large pan of lightly salted water to the boil. Add the spinach, submerge in the water and leave in the pan for 2 minutes only. (It doesn’t need to come back to the boil.) Drain the spinach in a colander and run under cold water until cool enough to handle.Squeeze out the excess water and chop, but not too finely.
2. Melt the butter in a large saucepan over a medium heat. Add the flour and stir to make a smooth, thick paste (i.e. a roux). Cook, stirring, for 2–3 minutes (it’s fine if it browns a little). Take the pan off the heat. Remove the bay and onion from the hot infused milk and tip about a quarter of it onto the roux. Stir vigorously to form a thick paste. Add the rest of the milk in 3 or 4 lots, stirring each in to get the mixture smooth before you add the next.
3. Return the pan to a low heat and stir the sauce until starting to bubble. Cook for a couple of minutes, stirring often, until thickened. Set aside 2 tbsp of the grated cheese and add the rest to the hot sauce, stirring it in until melted. Take the pan off the heat and stir in the mustard. Season with salt and pepper to taste. Set aside.
4. Preheat the oven to 190°C/170°C Fan/Gas 5. Add the pasta to a big pan of boiling salted water and cook for a couple of minutes less than suggested on the pack. Then add the frozen peas and bring back to a simmer. Drain the pasta and peas and stir through the sauce, with the chopped spinach, and capers if using.
5. Tip the mixture into a lightly oiled oven dish (2-litre capacity) and spread out. Scatter over the reserved cheese.
6. Put the cherry tomatoes and bashed garlic cloves into a separate ovenproof dish, trickle with the olive oil and season well. Put both dishes into the oven for about 20 minutes until the pasta is bubbling and golden on top and the tomatoes are blistered. The tomatoes may take a few minutes longer, which is fine as the macaroni cheese benefits from a brief ‘sit’ before serving anyway.