launchd is a "system wide and per-user daemon/agent manager." It is a daemon that handles daemons. Use launchctl to interface it.
launchd uses plist files to know how to interact with each installed daemon/agent. It is explained here.
Configuration file locations
|Administrator controlled Agents for a specific user
|System-wide daemons provided by the administrator.
|Default daemons provided by iOS.