Some quick benchmarking in this commit.
Allocating a render buffer and destroying it each generation drops gens/s by ~10. Whether this is big or not depends on your perspective.
The hit will be considerably less when it's only happening syncRate times per second. Much more functional style too. See next commit!
SyncWorldToScreen is now thread safe (I think!). Much faster than last commit already, since we are only allocating a new buffer when we actually need it.
Wrote thread-safe SwapThreadWorldContextPointers function.