static_assert to make sure that the curiously recurring template pattern is used correctly (i.e. class A : public Super<A> ).
note: The static_assert can not check if the typename T is the same as the derived class, only that T has been derived in the past. This means that
    class A : public Super<A>   { }
    class B : public Super<A>   { }
will still pass
Show pooled component usage in readme. Removed ticks