What is pluginlib and what are its main applications? What is the main application of nodelets? What are the different types of Gazebo plugins? What is the function of the model plugin in Gazebo?