In a mixing bowl, beat butter for about 30 seconds with an electric mixer at medium speed. Add sugar and vanilla extract. Beat on medium speed until fluffy, about 1 minute. In a separate bowl, whisk together flour, baking powder, and salt. With the mixer on low speed, gradually add flour mixture to the butter mixture, beating until just combined and scraping down the sides of the bowl as needed. Add the milk and blend until just combined. Divide dough into two equal parts and use your hands to form each part into a disc. Wrap in plastic wrap and refrigerate for 1 hour. It may be tempting to skip the chilling time, but chilling the dough is essential to easy cutting of the cookies and to keeping the cookies from spreading while baking. Working with one disc at a time, remove from the refrigerator and roll to just slightly thicker than 1/8-inch thickness. Use a donut cutter or two round cookie cutters, one smaller than the other, to cut the dough into circles. I found a 2 1/4-inch round cookie cutter to be the perfect size for the larger circle, and used the cap from a small spice bottle instead of a cookie cutter to cut out the inside circle. Carefully transfer cut circles to a baking sheet with a small spatula. Re-roll the remaining dough scraps and continue to cut circles until all the dough is used. Bake cookies at 350 degrees for 10 - 12 minutes until just starting to turn pale golden brown on the edges. Allow to cool on the baking sheet for 5 minutes, then transfer to a wire rack to cool completely. Spread 4 cups sweetened flaked coconut onto a parchment-lined baking sheet. Bake at 350 degrees for 12 to 18 minutes, stirring frequently, until lightly browned. Remove from the oven and set aside. Unwrap caramels. Place caramels, milk, and salt in the top of a double boiler. Cook over gently simmering water, stirring frequently, until caramels are fully melted. Remove about 1/4 of the melted caramel to a small bowl. Set aside. Add toasted coconut to the remaining 3/4 of the melted caramel. Stir gently until well combined. Remove from the heat. Working with one cookie at a time, spread each cookie with a thin layer of reserved caramel. This helps the caramel coconut topping better adhere. If caramel becomes too difficult to spread as it cools, warm in the microwave for about 5 to 8 seconds until spreadable. With a small spoon, press about 1 tablespoon caramel coconut topping onto each cookie. Set aside on a parchment lined baking sheet. If the caramel coconut topping becomes too difficult to spread as it cools, place it back over simmering water and warm it until it's spreadable again. Coarsely chop 8 ounces good-quality dark chocolate. Place in the top of a double boiler over simmering water. Add 1/2 teaspoon vegetable or canola oil. Heat, stirring frequently, until chocolate is completely melted and smooth. One at a time, dip the bottom of each cookie in chocolate. Gently shake the cookie a couple of times to allow excess chocolate to drip off. Place dipped cookies on a baking sheet lined with parchment or waxed paper. Use a fork or small spoon to drizzle chocolate over the tops of the cookies. Let the cookies stand until the chocolate is fully set. Store cookies in a covered airtight container at room temperature.