Place an oven rack in the centre of the oven and turn it to 160°C fan/convection oven or 180°C conventional oven.
Line a 27 x 16 cm standard-sized, slice tin with non-stick baking paper and lightly spray it with non-stick cooking spray. Set aside.
Find a heatproof bowl that fits snuggly into the top of a small saucepan.
Break up the chocolate and place the pieces (or, if using them, the buttonin the bowl. Also, chop the butter into small cubes and add that to the chocolate.
Fill 1/3 of the saucepan with water and then set the bowl on top again. Check that the water isn't touching the bottom of the bowl and if it is, tip some out.
Remove the bowl again and bring the water to the boil. Once boiling turn down the heat to medium/low or to where the water is simmering.
Place the bowl of chocolate back on the saucepan and stir often until all the chocolate has melted. Once done, pour the melted chocolate and butter into a medium-sized bowl.
Spread the almonds out on an oven proof tray and place them in the oven to toast for around 8 minutes or until they are two shades darker (tossing them halfway through). Leave them aside to cool down).
Roughly chop up the biscuits and add them to the chocolate.
Add the coconut and the dried cranberries to the chocolate and the biscuits. (If you'd like to sprinkle some coconut on top later, leave 1 tablespoon aside.)
If you are using large marshmallows, cut them in half and add them (or the mini ones, if using theand the almonds, to the bowl with the rest.
Add the vanilla, and stir it all together well.
Spoon it into the lined tin, moving the marshmallows around until it looks fairly even all over.
If you've set aside some coconut, sprinkle it all over the top and then pop it in the fridge to set for at least 1 hour.
Once it has set hard, cut it into pieces.
Store in an airtight container, in the pantry, for up to a week.