Fixes intersection when a matrix node got several children

The picking wasn't working (see the test case below) when a matrix transform node got several children (with transform too).

When it was proceeding to the second branch, the enterNode function returned false it was still using the setCurrentTransformation from the left branch.
@jtorresfabra 

Maybe it's not optimal performance wise since the same "inverse" transformation can be applied several time.
I think the real problem is here. We set he transform Matrix and e we don't remove it. We need to restore the matrix once the transform node is traversed (See next comment.)