Physiological responses to stoichiometric constraints: nutrient limitation and compensatory feeding in a freshwater snail