the class Projection_traits_3 is not written using the kernel functors *_object(), but a fix of those and free functions TODO in the future : document this traits concept properly with all functors and function objects that are needed, and fix the code accordingly