What is the purpose of the config/install directory? I was trying to use omega theme and found lot of files under omega/config/install. E.g. block.block.omega_account_menu.yml, block.block.omega_branding.yml, omega.layout.omega_default.yml. I wonder what are the functionalities of these files and how are they being used. Is there any guide to follow? How can I create another one and how can I use it?
The config/install directory contains the default configuration of a theme/module. Its purpose is explained in Include default configuration in your Drupal 8 module, which says:


  In Drupal 7 default configuration for modules such as content types, field configuration, views, etc. required custom PHP code to install and keep updated. In Drupal 8, these are stored with the configuration system in plain text YAML files.
  
  For example the configuration management system takes care of creating and managing content types. You can ship a content type with your module by creating a properly named and structured configuration file.


Then, it adds:


  You can include default configuration for other things like block placement, views, text formats, editor configuration, user roles, etc. with your module the same way.


Drupal core itself uses files like block.block.bartik_powered.yml, or block.block.seven_messages.yml.

I didn't find a description of the content, but if you look at the content of those files, you can understand what you need to put.

langcode: en
status: true
dependencies:
  module:
    - system
  theme:
    - seven
id: seven_messages
theme: seven
region: highlighted
weight: 0
provider: null
plugin: system_messages_block
settings:
  id: system_messages_block
  label: 'Status messages'
  provider: system
  label_display: '0'
visibility: {  }


Note that the file declares its dependency from the System module because that is the module implementing the block plugin (plugin: system_messages_block).