Made mutation categories actually matter.

The primary mutation category now has significant influence. Traits from
other categories have a high chance of being removed. It is now very
difficult to end up with every single trait in the entire game.
Mutagens that cause mutation only in specific categories.

There are still a lot missing.
Added the remaining specific mutagens.

For now they use very general recipies.
Add support for elevators to game::nertical_move().
Call game::vertical_move() from iexamine::elevator() instead of trying to shift levels manually.
Despawn monsters when we change z-levels, and handle sticking them in the stair queue properly.
Nest trig_dist() in rl_dist() instead of replicating the implementation.
Marshall info about the current square at the start of drawsq() instead of calling the same methods multiple times.
Add a caching accessor for whether the player has active night vision.
Use new accessor to test for presence of nightvision tech.
Add invalidation hook to player that is called every action.
Assembly and disassembly recipes for a number of CBMs
Blood Filter disassembly added
Add brass catcher item, functionality, craft recipe, and spawn locations.
Replace some of the melee weapons in gun nut basement with gun extras.
Slight rebalancing, adds Power Armor Interface Mk. II
Resolves an issue where interacting with human flesh would crash the game
Updates name of "canned cad" to "soylent slices" to properly fit the theme of To Serve Man
Updates poppy picking to properly ponder infection resistance (see note in comments)
Adds power armor Mk. II; makes power armor impervious to radiation