[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.

This should either A, be refactored so this isn't necessary, or B, increment and pass a var to limit the number of times it will attempt it. For example:
```dm

#define SNOW_ATTEMPT_LIMIT 16

/proc/cosmic_freeze_event(aLimit=1)
    [...]
    if(aLimit < SNOW_ATTEMPT_LIMIT) return .(aLimit+1)
    else message_admins("<em>Failed to create cosmic snow in [aLimit] attempts. Giving up.</em>")
    return 0
```