fix(expressions): work around for the new operator and constructors over...

...riding apply

This PR makes the `new` operator work correctly with constructor functions that override the `apply` method. Normally we shouldn't have this situation but in practice we are getting this setup while using the $klass utility for objects to be used in pipe expressions.

This PR is just a work-around, but I believe that we should change the non-obvious behavior of the $klass utility as in its current setup it can confuse people a lot. Another PR to fix this will follow.