Fix bug #3505.

When w_unifying primitive projection applications, force
the unification of types of the projected records to recover instances
for the parameters (evarconv does this automatically by unifying evar
instances with their expected type).
Fix bug #3596, wrong treatment of projections in compute_constelim_direct.
Fix bug #3594: eta for constructors and functions at the same time which
was failing in this case due to the wrong postponment of an unsolvable
?X = RigidContext[?X] problem.