Multi env support and Kube client integration

Kube friendly Beta

Package versions supports Kube env

Added:
  - Env type detection
  - New option: --use-env, for selecting env
    when function supports multiple detected envs
  - Updated config loading
  - Each module and command type has supported env check
    and stops execution if it is on unsupported env
  - Functions can support multiple envs
  - Kubernetes dependency
  - Kubenernetes API detection: local and remote
  - Package checking class hierachy for using Salt or Kube
  - Remote pod execution routine
  - Flexible SSH/SSH Forwarder classes: with, ssh,do(), etc
  - Multithreaded SSH script execution
  - Number of workers parameter, default 5

Fixed:
  - Config dependency
  - Command loading with supported envs list
  - Unittests structure and execution flow updated
  - Unittests fixes
  - Fixed debug mode handling
  - Unified command type/support routine
  - Nested attrs getter/setter

Change-Id: I3ade693ac21536e2b5dcee4b24d511749dc72759
Related-PROD: PROD-35811
diff --git a/etc/qa-lab.env b/etc/qa-lab.env
index 259528b..3d785ef 100644
--- a/etc/qa-lab.env
+++ b/etc/qa-lab.env
@@ -6,23 +6,22 @@
 # Or run it from within a cloud
 
 # Main log file of the tests
-LOGFILE = 'qa-lab.log'
+MCP_LOGFILE = 'qa-lab.log'
 
 # SSH is used when environment is not local to get salt password
 # in order set options and user for the ssh, 
 # please, use ~/.ssh/config
 # SSH hostname of salt master node
-SSH_KEY=/Users/savex/.ssh/id_rsa
-SSH_USER=osavatieiev
-SSH_HOST=172.16.242.122
+MCP_SSH_KEY=/Users/savex/.ssh/id_rsa
+MCP_SSH_USER=osavatieiev
+MCP_SSH_HOST=172.16.242.122
 
 # Salt master host to connect to
-SALT_URL=172.16.242.122
-
+MCP_ENV_HOST=172.16.242.122
 # Salt master port.
 # Note that you can safely execute second master (not on production)
 # on the same cfg node with diferent port and set logging to ALL
-SALT_PORT=6969
+MCP_SALT_PORT=6969
 
 # User and password to auth on master. Can be found in /srv/salt/...
 SALT_USER=salt