In a large bowl whisk together the flour, baking soda, baking powder and salt; set aside.
In a bowl, beat together butter and sugar together at medium speed until light and fluffy. Add the eggs, one at a time, beating until each is mixed in well. Add the vanilla and sour cream and beat at low speed until combined.
Add the dry ingredients and beat at low speed until just combined. Dough is supposed to be a little sticky. Chill in the refrigerator for two hours or more.
Preheat the oven to 425 degrees F. Line large baking sheets with parchment paper or Silpats; set aside.
Lightly flour the countertop and the top of the dough. With a rolling pin, roll the dough out to ¼-inch thickness. Using cookie cutters, cut out the cookies and place on prepared baking sheets. Bake for 7 minutes, until cookies are slightly golden around the edges. Immediately transfer cookies to a wire rack to cool. Cook cookies completely before frosting.
To make the frosting, cream together the butter and vanilla. Slowly beat in powdered sugar and the pinch of salt. Once smooth and creamy, add in heavy cream, then beat at medium-high speed for a minute or two until light and fluffy. Add food coloring, if desired, and beat until combined.