Change master recipe data structure - organized by category now
Remove now-unused craft_cat member from recipe struct
Minor cleanup (linebreaks, remove unused variable)
Add anti-multiple-inclusion wrapper to calendar.h
Add lastPracticed member to SkillLevel class.
Let recipes be non-autolearned

First pass at making learned vs. automatic recipes. Also fixes a bug where you could use the search function to gain access to noncraftable recipes (i.e., recipes meant only for disassembly).
Fix recipe filter
Set last practiced timestamp when practicing skill.
Pull skill rust logic into skill class.
Fix longstanding skill rust bugs.
Only risk discharging bio_mem if options would allow skill rust.
Halve rate of skill rust across the board.
Only rust if X turns have passed since practice, not every x turns.
Push recipes out to JSON

Yeesh, this was gnarly. picojson is annoying to work with (especially if you're doing error-checking), and that was a lot of recipes. Perl recipe2json script available upon request, assuming I haven't deleted it.
Added formatted writes for Map Generation.

Provides a formatted_set_terrain method. Also added helper.cpp to the
cbp file.
Added back the rotate call I that got removed

Derr.
Acid rain causes pain not injury
roadmap now paper|null
Changed default viewmorale key to v
Removed kitchen units from garage spawn list