Place shrimp, lime juice, 1/2 teaspoon of salt, 1/2 teaspoon pepper, and 1 teaspoon of curry powder together in a bowl and toss to coat evenly. Set aside as you prep everything else.
In a large pot over medium heat, add the grated onion and 1/4 teaspoon of salt. Saute until the liquid begins to evaporate, and before the onion starts sticking add the oil. Saute until the onion begins to brown.
Add the garlic and ginger, the remaining 2 teaspoons of curry powder, cumin, turmeric, coriander, and cayenne pepper. Toast until fragrant, about 2 minutes.
Add the coconut milk and tomato sauce and continue to stir. Bring to a simmer, and maintain a simmer until the sauce thickens, about 10-12 minutes.
Add the shrimp and all marinade ingredients, and cook in simmering broth for about 2 minutes, until the shrimp are opaque and cooked through.