Promote inconsistent object model constructors to public.

Prior to this only a subset of the constructors were public which dramatically limited their reuse.

@swankjesse @danrice-square