revamp vars structure separating supervisord config from programs and make supervisord configuration a little more sophisiticated

- making supervisor programs the only required vars to make it work, and not introducing them doesn't break. Also allows more configuration attributes to be overridden for the supervisod remote.
- automatically launch supervisord (if not launched already) and reload configuration.
- add and start programs using supervisorctl.
update readme