* Fix Runtime in atoms_movable.dm,597: list index out of bounds
* Fix Runtime in floor_attackby.dm,118: Cannot execute 0.is crowbar().
* Fix null values being present in mob_list.
* Another fix for Runtime in update_icons.dm,254: Cannot execute null.GetUIState().
- This time lets just ensure dna is instantiated no matter who is calling dress_preview_mob().
* Fix Runtime in suit_storage_unit.dm,792: Cannot execute null.set machine().
- Also fixed other mixups of usr vs. user that I found in the same file.
* Fixes Runtime in find_spawning.dm,688: Cannot read null.origin_tech
- if this else if block is reached, new_item must not exist, so we obviously can't set origin_tech on it. Examination of the code seems to suggest the original author intended that for any "talking" items to have arcane and precursor tech; since src is now being made talking, src should get the tech.
* Fix talking artifacts downgrading arcane/precursor tech
- Bump up the values by one for talking artifact items instead of overwriting whatever the value was.
* Code was assuming that item.origin_tech would be an initialized list.
To be safe we use LAZYSET so it will work properly even if its null.
* Other code was calling pickweight and passing it the options as named
arguments. They are supposed to be passed as a list.
* Adds Imperion sprites.
* Adds more Xenoarch sprites (most from Schnayy)
* Adds Precursor tech and Anomaly tech.
* Adds Precursor and Anomaly machine components. Machines tweaked to allow usage.
* Bioprinter can print random-species organs with Precursor tech.
* Adds Verdantium, Lead, and Marble to mining.
* Marble rebalanced to compensate.
* Tweaks Xenoarch find spawning
* Xenoarch can now find Imperion circuits (useless for now).
* Xenoarch can now find boats, and sometimes an oar, of a random material.
* Particle smasher added to make Morphium, Valhollide, and Supermatter.
* Morphium and Verdantium coins added.
* RnD machines can accept more materials. No recipes tweaked.
* Creating new objects is cheap, in fact comparable to the cost of getting it out of the pool, so it doesn't help there.
* Placing items in the pool is far more expensive than letting them garbage collect due to the resetting of vars and such.