re worked the function a bit

from onGainExperience(target, exp)
to onGainExperience(target, exp, rawExp)
rawExp = the exp which is reflected without multipliers (stamina / exp rate)
fixed Call Stack Overflow
applied all changes you wished for.

added a new param to addExperience = applyMultiplier
so we can differenciate between the lua function (which should not multiplied) and the actual gain experience through monsters which should be multiplied
Merge conflits