1. add ragdoll. \n 2. refine componet factory