[do not merge yet] winter update: Electric Boogaloo

I've got a splitting headache, I spent the night trying to have it not use more CPU than process. It's fine until there are over 1000 snow tiles, which happens sooner rather than later.

I'll just go die in a corner now, but feel free to take a shot at making that monster work.

For those who might give it try, spawn an /obj/structure/snowreader to know how many snow tiles there is at a given time.

We should give it another go on the server tomorrow.

Try not to do things and then return the parent proc: if you're telling the user they need wirecutters, why add the extra insult of having them do some other unwanted behavior too?