tree d9138f320eec251e9366d481172700ba316ecce8
parent 997edbcf276a6372f7e95a151a7e979b837c98dd
author Sergio Slobodrian <sslobodr@ciena.com> 1499949730 -0400
committer khenaidoo Nursimulu <knursimu@ciena.com> 1499966237 -0700

Large update which includes the following
- The introduction of a tools container which can be expanded as
  necessary. It connects to voltha and kafka networks
- The introduction of the envoy proxy container
- The addition of an option to the CreateInstaller.sh script to rebuild
  the voltha VM to pick up any new code changes
- A fix to work around a dpkg issue where it didn't handle depnedencies
  propoerly
- Addition of start and stop scripts for the voltha suite and the use of
  those scripts by the installer. The old per service start eliminated
  from the installer
- Increased the number of vCPUs used by the installer and the voltha VM
  to speed up installer creation.
Note the envoy proxy has not been integrated into the voltha suite yet,
this commit adds the container and some preliminary configuration but
integration of the proxy will be committed in a subsequent update.

Addressed comments from the reviewers

Change-Id: I5475f110ba955631baf05b0e34aa6a934ca69a24
