Fix for not using optimizer in AbstractComponentTuplizer constructor, as it is set later in PocoComponentTuplizer derived class

This makes calling BuildInstantiator twice, once from base class, second from derived - the same trick is used in PocoEntityTupilizer
Also refactored creating optimizer to separate method, called also from [OnDeserialization] callback, same as in PocoEntityTupilizer