Skins are the different styles and contents a site can have depending on their needs. For example, one skin can have different colors/font-sizes and different copy for a specific holiday.
Sites is where the basic information will be, such as it's URL and it's associated template.
This is where each skins styles and copy are defined. For example, it can have one configuration for the main title of a skin to be red, and in another the main title can be blue and have a completely different copy.
This is where is defined which skins each template is using, and since one template can be used by multiple sites, the site_id is also defined.
Templates are the basic building blocks/html structure.