Update WeatherEffect to use a PersistentObjectWorkQueue instead of repeating invokes
Budgeted to 0.05ms, matches it's invoke cost but stops the occasional spike up 0.1ms
Also pass the position of the effect down the chain once, instead of repeatedly accessing transform.position