Massive refactoring

This commit does some massive refactoring of the Salt source:

  - reclass and all adapters have been changed to support the distribute
    (setuptools) entry-points interface, while they are also runnable
    directly (using `/usr/bin/env python`);

  - reclass and all adapters now use exactly the same approach to
    configuration (sensible defaults + config file + command-line
    options), but inventory/nodeinfo is properly parametrised (e.g.
    top/pillar for Salt);

  - the documentation has been updated accordingly;

  - defaults and constants were factored out into common modules.

Signed-off-by: martin f. krafft <madduck@madduck.net>
diff --git a/examples/salt/reclass-config.yml b/examples/salt/reclass-config.yml
new file mode 100644
index 0000000..01b8d31
--- /dev/null
+++ b/examples/salt/reclass-config.yml
@@ -0,0 +1 @@
+inventory_base_uri: ..