Update professions.json

added a profession Bionic Prepper. a few CBM's losing a couple skills and the lighter
Belted-layer related balance changes

Prevent the tool belt from being fitted. Currently the tool belt is objectively better than the tactical dump pouch, because it can be fitted and specialized military equipment can't.

Allow the tactical dump pouch and the fanny pack to be fitted.

Remove the chest rig from the belted layer. It's a vest, and is not anything like a belt.

Move the purse to the belted layer. It's a purse, and is not anything like a shirt.

Remove the holster from the belted layer. It doesn't cover anything, so having it be belted doesn't do anything.

Halve messenger bag and runner pack volume to 10 and 9, respectively. They're still better than every single other 0-enc, non-fittable item on the belted layer. 

Allow the scabbard to be fitted. There's currently no reason to use a scabbard, which offers up to the equivalent of 17 volume (when sheathing a nodachi), when you can use a messenger bag, which offers 20 volume and is easier to find. Even after the messenger bag's volume is halved, messenger bags are still the better choice for carrying most swords without this change; only the zweihander and the nodachi are larger than 10 volume.

Allow both large and small quivers to be fitted for the same reasons.

Prevent survivor-brand backpack and rucksacks from being fitted, increase the volume to match their non-survivor-brand counterparts.
Changing Bionic Prepper to be more balanced, lowered skillset and power storage changed metab to torsion upped profession cost to 8
Extract artifact type handling into artifact.cpp.
Update professions.json
Move as much artifact definition code into artifact.cpp as possible.
More prices fixes.
Change item::material to return a material pointer directly.

Previously item::material returned only the material ident. That ident has been used to get the material_type object. Now this is already done by the get_material function.

Use material ident null instead of empty ident for is_null check. The
json file contains a material with ident "null" and some code also
relies on it.
Search for translated material name in game::list_items_match

Also made search for category and material case-insensitive.
Random character respects INITIAL_POINTS now
Let random char creation respect max stat/skill
Revert messenger bag and runner pack changes
Added Mall
Added Mall
Added Mall
Merge branch 'material-n' of https://github.com/BevapDin/Cataclysm-DDA into Bugfixes
Merge branch 'random_character_points_fix' of https://github.com/Wuzzy2/Cataclysm-DDA into Bugfixes
Updated to make mall map more descriptive
More price fixes.
Merge pull request #7665 from Rivet-the-Zombie/even-more-fixes

More price fixes.