BaseGetOpImpl becomes public.
Extra abstraction in BaseGetOpImpl::initialization to ease reuse of the class.