Merge pull request #291 from lmr/plugin-tweaks

Plugin tweaks
avocado.settings: If local config doesn't exist, copy from system-wide

This way people will have their configuration file ready
to be edited when they wish so.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado: Move settings.ini to avocado.conf

As discussed in the Trello card

https://trello.com/c/WsDMg7RP/161-initial-support-for-avocado-config-files-server-and-client

Move settings.ini to avocado.conf. The basic idea is
that the name is more intuitive.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado.plugins: Add config plugin

Add the config plugin, that introduces the 'config'
subcommand. This shows to the user the config keys
available in the system.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
etc/avocado.conf: Use /var/tmp/avocado instead of /tmp
avocado.settings: Read from both system wide and user config

Whatever is in the system wide settings can be later
overriden by users. Also, change the settings.config_path
attribute to settings.config_paths, and change it to
a list. This way users can see the order in which their
config files are parsed.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
avocado: Add etc/avocado/conf.d directory

Introduce a system wide conf.d directory, that
is supposed to ship config files for avocado
plugins. The order for config parsing is:

 * System wide avocado config (/etc/avocado/avocado.conf)
 * System wide avocado plugins config (/etc/avocado/conf.d/*.conf)
 * Local config for the user running avocado (~/.config/avocado/avocado.conf)

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
docs: Add Configuration documentation

Add a section that explains how the avocado config system
works.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>