Reworking property object system to use variants to pass data across threads instead of simply passing the property objects