Refactored to accept an object in the constructor.
Created a CustomPostTypeArg class.
Refactored to use the CustomPostTypeArg class. Renamed some fields.
Extractec code for labesl and arguments to methods.
Refactored the constructor and related methods. Not loops through arguments and sets what is not empty. Checks for empty name.
Updated ignores.
Updated ignores.
Updated ignores.
Added public to the properties.
Set default public value.
Removed space.
Changed public to false to match WordPress defaults.
Added constructor.
Added error checking for name.
Removed error checking since it is now done in the arguments.
Changed $name to private.
Added getName().
Moved defaults from CustomPostType into CustomPostTypeArg.
Removed text domain stuff.
Moved label logic to arguments. Made them private.