Use smart mapping in map_constr_with_binders_left_to_right.
Fixes in Ltac pattern-matching on primitive projections
and pretyping which was not contracting the eta-expanded forms in presence
of coercions.
Move the specific map_constr_with_binders_left_to_right
for e_contextually where it is used. Bug #3648 is fixed.