- Fixes Paper and font tags stacking across rounds, as shown in: 
- Fixes Graffiti being persistent for over 50 rounds (10+ days)
- Sets Trash to be persistent for 4 rounds instead of 5
- Fixes Persistence being always-on because of if("persistence_enabled") config.persistence_enabled = 1. As explained:
> it's on by default, which means config.txt will be read and if it's not there it stays at 1. If it is there,it gets set to 1. There is no way to disable it
- Adds config options to enable/disable **Persistence for Maploaded objects**, as well as a verb to toggle such.
- Adds Persistence to config.
Currently IGNORE_MAPLOAD for Persistance is **Disabled.**
Maploaded objects/dirt/etc will be saved by persistence, preserving current behavior.
Microwave not cooking micros/mice: Fixed
Invalid Recipe datum thanks to /microwave prefix: Fixed
Fryer earsplittingly loud: Fixed
Fryer/Oven continuing to cook even after items removed: Fixed
Oven having 'on' icon state when door closed but off: Fixed
Appliances not scaling cooking time/damage based on size: Fixed
Feature added - Burning Food will set off fire alarms and set off a black cloud of smoke!
Overcook time reduced to allow for less margin of error (IE Actively requires you to pay attention)
Multiple Microwave bugfixes, including multicooking/etc not working, recipe errors, icon state errors, ejection errors.
- Add additional can_atmos_pass value ATMOS_PASS_PROC which indicates custom behavior requiring calling the CanZASPass proc.
- The benefit being for the other three values we DON'T need to call CanZASPass at all! We already know the behavior without the overhead of a proc call.
- Obviously any atom with can_atmos_pass = ATMOS_PASS_PROC cannot now call ..() in CanZASPass() since the default behavior would be to (recursively) call CanZASPass()
- This required re-numbering the constants, so I also fixed all code that assumed particular values for the constants.
- Switched all types which overrode CanZASPass with custom logic to be can_atmos_pass = ATMOS_PASS_PROC
- Changed /turf/c_airblock() to skip calling /atom/movable/c_airblock() for the three can_atmos_pass values that don't require calling the proc.
- CanZASPass is supposed to return boolean. Nobody noticed this bug because ATMOS_PASS_YES and ATMOS_PASS_NO happen to be defined as 1 and 0. But thats not a good assumption to make, so lets fix it!
- This was caused by create_spores() being called on seeds which were not registered with the plant_controller (becuase they had never been harvested)
- Instead of registering them, we can just pass the seed datum itself, that is all the chemsmoke needs anyway.