Class.cs is there to define how to handle the values of an entry in ClassList.cs, you don't need to touch anything at all in Class.cs
the attributes such as rarity and movement control the in-game stats of a unit (with rarity controlling how many stars a unit has in the vessel details menu and movement controlling how many tiles a unit can move per turn respectively)
the numbers are there just to be part of a flag system the game implements, you don't need to touch them at all
to make a new skill, you have to edit SkillList.cs by creating a new entry in the code for it; I'd say use chateau's bulwark skill as a base since it contains the Skill.Flag.Carrier flag that the game uses to know if a unit has carrier abilities
to put your custom skill on an actual unit though, you'll have to either edit ClassList.cs to make it be included with a pre-existing unit or ModLibrary.cs to change how it handles creating modded characters (which comes at the cost of it applying to all modded characters though)