Bring the water, shrimp shells, lemongrass and kaffir lime leaves to a lively simmer. Cover and simmer for 20 minutes. Strain the resulting broth and return to the pot. Discard the shrimp shells, lemongrass and lime leaves.
Bring to a simmer and add the tom yum paste, lime juice and fish sauce. Cook for 5 minutes.
Here's how you make sure your shrimp are perfectly cooked. Add the shrimp to the simmering soup. Turn off the heat. Set a timer for 8 minutes. Prep an ice bath (ice and water in a bowl). After 8 minutes remove the shrimp from the soup with a slotted spoon and drop them into the ice bath. This stops the cooking. Set them aside.
When you are ready to serve, warm the broth until it just starts to simmer. Add the mushrooms and cook for 5 minutes.
Add the shrimp back into the broth. They will warm through before you eat. Serve immediately. Don't let them sit in the hot broth. The second they hit that broth they start cooking again.
To serve, divide into 4 bowls and garnish with cilantro, green onions, lime and chilies. The chilies are optional. You have to want it really spicy...