Fix order of ctor call.
Add check for lazy initialization.
Add initialize method.