Renamed some structs to be a little clearer about their purpose.
Rearranged parameters for CreateThreadedLifeContext()