As far as help I'm asking for here, I'm mainly wondering what I need to do to implement changes listed in #2 & #3. Melee weapons and bows will remain untouched for now.
For #2, you need to change the progression file, specifically the new crafting_skills area. Example below is code I put in place to limit crafting of all T0 weapons to only 2 levels
<set xpath="//crafting_skill/effect_group/passive_effect[@name='CraftingTier' and contains(@tags,'T0')]/@value">1,1</set>
Note that everyone starts out at QL1 so the ones in the example above are +1 (QL2). For you, your value will be 1,2,2 with the last #2 for the max level (so you always have the ability to craft QL3.
I then added specific code to change the levels unlocks since I added Q6 crafting to other items
<set xpath="//crafting_skill[@name='craftingBows']/effect_group/passive_effect[@name='RecipeTagUnlocked' and @tags='gunBowT0PrimitiveBow']/@level">1,122</set>
So for each weapon, you need to modify the value on the crafting Tiers. If you change the number of magazines required, you also have to change the level.
In addition to that, you will need to change the display portion
<set xpath="//crafting_skill[@name='craftingBows']/display_entry[@name='gunBowT0PrimitiveBow']/@unlock_level">1,5</set>
Note: For #2, it is not hard, but you will be adding a lot of code.
For #3, that is going to be harder. For the ranged weapons, they are part of the following lootgroup:
<lootgroup name="groupWeaponsRangedScaled">
<item group="groupWeaponsT0_Ranged" loot_prob_template="ProbT0"/>
<item group="groupWeaponsT1_Ranged" loot_prob_template="ProbT1"/>
<item group="groupWeapons_RangedParts" loot_prob_template="ProbT1Cap"/>
<item group="groupWeaponsT2_Ranged" loot_prob_template="ProbT2"/>
<item group="groupWeaponsT3_Ranged" loot_prob_template="ProbT3"/>
</lootgroup>
Those are tied to the ProbT2 and ProbT3 loot probability templates. If you just want to change for range weapons, you will need to create new probability tables and then change the ones for Ranged weapons to these new probability tables.
Easiest way to do this is just to take the ProbT2 and ProbT3 tables, copy them to your file, and then start tweaking the probability numbers. The Ranged Parts is based on ProbT1Cap so will always have a prob value of 1 once you get to T2 and T3 loot stages.