For the cookie dough, cream together the butter and sugar until it's combined and fluffy. Add the oil, sour cream and continue to mix until combined. Add the rest of the ingredients and mix until the cookie dough comes together.
Let the dough rest in the fridge while you make the frosting.
For the frosting, cream together with an electric mixer the butter and cream cheese until smooth. Add the lime zest, extracts and powdered sugar one cup at a time. Add the sugar as you go until it is combined and smooth. If you need a little moisture, use the lime juice to soften the frosting.
In a small bowl mix together the sugar and crystalized lime packets. Mix together.
Preheat the oven to 325 degrees. Spray a cookie sheet with cooking spray. Get the dough from the fridge and use a medium sized cookie scoop to place the dough balls into the lime sugar.
Roll around in the sugar and place the ball on the cookie sheet. Continue to do this to 11 other cookie dough balls.
With a spoon, press down the center of the cookie dough ball.
Bake for 7-8 minutes, or until lightly golden brown. You don't want the cookie to be over done however, just barely cooked through.
Once the cookies are out of the oven, remove onto a cooling rack. Once the cookie is cooled, frost with the coconut frosting.
Sprinkle the top with flaked coconut (optional) and place a small slice of lime on the cookie. When eating the cookie, squeeze the lime onto the top of the cookie and enjoy!
Notes
You can find the crystalized lime packets near the lemon juice and lime juice of your grocery store. If you can't find those, just add more zest and a little more lime juice. You could also use a limeade drink mix packet (the dry powder) as well.