Major refactor to merge DistributedObjects and GameObjects seamlessly