Sort part list when inspecting vehicle.
Change trap detection mechanics

Halved perception's influence on trap detection, and added trapping skill into the calculation. Now you'll have to be both perceptive and skilled at traps to notice traps.

I always disliked how you absolutely had to have at least 10 perception if you wanted to be able to see land mines. Now you can make up for lower perception with more trapping skill; you can now see landmines at 10 per and 5 trapping skill, 8 per and 6 trapping skill, 6 per and 7 trapping skill, etc.
bugfixes

It actually works now
remove needless inclusion
Make trap detection easier

From per/2 + traps to per/2 + traps*2.

I like brackets.
Fixed drinking directly from a keg to prevent consuming charges if
player aborts before actually drinking.
Changed keg examine to state current charges and percentage filled
rather than number of 250-ml volume units.
Turret upgrade

It turns out that typical defense turrets were using a SMG ...made from
a pipe and a piece of wood.  No wonder they weren't much of a threat to
endgame armor.

So this upguns the typical lab turret to use an MP5 instead, and creates
the new military-grade M4 turret.  With its upgraded actuators, doubled
ammo capacity, increased HP, deadly-looking green paint job, and ability
to reach out with its 5.56 and touch you 36 tiles away*, these ought to
make miloutposts a little more respectable.

*High-powered lights force night raiders out to range 7.  Helps against
rock-throwing terrorists!
Shortens fluff in description

Ought to help it fit in smaller boxes.
Fixes drops, adds spawn

Almost forgot.
Merge remote-tracking branches 'dda/pr/7748', 'dda/pr/7786' and 'dda/pr/7803' into dda-master

* dda/pr/7748:
  Sort part list when inspecting vehicle.

* dda/pr/7786:
  Make trap detection easier
  remove needless inclusion
  bugfixes
  Change trap detection mechanics

* dda/pr/7803:
  Changed keg examine to state current charges and percentage filled rather than number of 250-ml volume units.
  Fixed drinking directly from a keg to prevent consuming charges if player aborts before actually drinking.
Merge pull request #7804 from KA101/turretupgrade

Turret upgrade
* clean up the iuse::knife
    * Found out can't just get rid of iuse::knife as it's called from multiple places to provide the UI for cauterizing, carving, and cutting.
    * iuse.cpp: static carve_writing (new function)
        * use to isolate carving of writing via an instrument
        * function self-contained for now, queries use for what they want to carve
    * iuse.cpp: valid_fabric renamed to valid_to_cut_up
        * validates whether an item can be cut or not.
        * contains the same logic as previously existed, reorganized bit, that was split into a couple of places
    * iuse.cpp: iuse::cut_up -> changed to just a static function as it is used no where else
        * apply one item as cutting instrument to another.
        * salvages things as previous (only one material salvaged) but isolates all salvaging code
    * iuse::knife
        * now just an entry point for the three knife functions: salvage, carve, cauterize
    * uistate
        * removed the not really necessary (my opinion) ui_knife_selected. Can't imagine anyone is doing that much carving of items.
    * item.cpp:
        * changed how I think I want to work with materials by adding a made_of_intersects, made_of_any, and not_made_of.
        * might nuke these functions and make consumers do what they wish with the set returned by made_of(). Will see if they're useful when I start using them.
Merge remote-tracking branch 'upstream/master' into issue7508_some_fixes_for_item_cutting