Add overridable init method