Rename "drop-in test" (Dropin) to "simple test" (SimpleTest).

Due the concept of "drop-in" tests didn't match the actual
purpose of running any script or binary as a test in Avocado, we're
going to use the term "simple test" (defined in SimpleTest class)
to contrast with "native test", which are Python modules that
uses Avocado's API.

Signed-off-by: Rudá Moura <rmoura@redhat.com>
avocado.settings: If local config doesn't exist, create an empty config file

And put a reminder of the purpose of that file, while we're at it.

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 instead of /tmp

To avoid problems with /tmp being mounted on a tmpfs in
certain systems.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
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. Also, 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>
avocado: Remove datadir plugin

Since the 'config' plugin supersedes functionality
in the 'datadir' plugin, let's remove it from avocado.
Update the configuration accordingly.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
debian packaging: Update control dependencies and changelog

The setup.py related changes are good enough to make the
avocado debian packages OK, but we were lacking the
python-pystache dependency on debian. Fix this.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
Merge pull request #301 from ruda/simple_tests

Rename "drop-in test" (DropIn) to "simple test" (SimpleTest).
Move test loading to module avocado.loader.

Move test loading from the TestRunner class to a proper
module avocado.loader and create a new TestLoader class to contain
the test discover and load there.

Create hook to allow the TestLoader class being replaceable and
expandable.

Signed-off-by: Rudá Moura <rmoura@redhat.com>
Add discover(), discover_item(), "test suite" and "test factory".

Signed-off-by: Rudá Moura <rmoura@redhat.com>
_make_test(), _make_simple_test(), make_missing_test().

Signed-off-by: Rudá Moura <rmoura@redhat.com>
Fix functional test for whiteboard.

Signed-off-by: Rudá Moura <rmoura@redhat.com>