Expose designated initializer