Add listeners, and fix divide by zero bug in range modulators