Curiously recurring template pattern

Pinocchio library makes intensive use of the so called CRTP desing pattern.

This patterns is used for performance reasons in the implementation of static polymorphism.

See also:
https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern