WP-528: Initial refactor of PZH to use express framework

This commit is not a complete working version: the PZH TLS server is
stubbed out.  Initial certificate exchange has been implemented.

Jira Issue: WP-528
WP-528: PZH Web interface now talks to the PZH, incomplete

Moved the folder the webinos/pzhweb as the pzh web interface is now
logically on a part with the pzp and pzh.

The PZHWeb interface now creates a TLS connection to the PZH

Totally insecure: the PZH isn't authenticating the PZH Web Interface

No message handling has been implemented yet
WP-528: Add reconnection capability to web server TLS client

The web server will now attempt to reconnect to the PZH TLS server
10 times before giving up.  This will be useful if any errors occur.

Jira issue: WP-528
WP-528: fix for reconnection capability plus minor changes to the PZH structure

This is part of the refactoring work on the PZH.  It provides an update to the
connection between the PZH Web Interface and PZH.

JIRA Issue: WP-528
Refactoring code for separate PZH web server
Enrollment is working from PZH end.
From PZH end all data is retrievable.
PZH-PZH communication requires notification bit working.

Jira Issue: WP-528
PZH - PZH connection request working

Added support for PZH list

Jira Issue: WP-528
Pzp Enrollment Updated to match with changes to Pzh Web Server

Changes include: PZP Testbed sets Pzh Provider address, then TestBed redirects to Pzh Login, PZH then sets webSocket connection towards the PZP, sends token. PZP then sends CSR and token back to PZH to receive signed certificate.

Jira Issue: WP-528
Client side display handle changes

Mostly bug fixing and changes to client side display.

Jira Issue: WP-528
Approve user and PZH-PZH connection

- Temp storage of untrusted certificate
- Make user decision changes
- Service discovery support between pzhs
- Connection between PZHs
- Connected Pzh related fixes.

Jira Issue: WP-528
PZH connect manual support added

Was missing connect pzh functionality when address entered manually.

Jira Issue: WP-528
SessionID used between PZH has been changed to format of ipaddress_emailid

Updated code to use consistent id between pzhs.

Jira Issue: WP-528
Fixes PZP enrollment

PZP enrollment now creates websocket via webpage from PZH to PZP to make localhost connect.
Once enrolled pzh enrolls back to the PZP.
To make enroll user needs to be authenticated

Jira Issue: WP-528
PZH tls server starts without reject unauthorized set

PZH web server is started with reject unauthorized set as true

Jira Issue: WP-528
Bug fix

PZP url was reading wrong value.

Jira Issue: WP-528
Service discovery between PZH after initial connect

After initial connect pzh will send updated service to connected PZH everytime service is updated from PZP

Jira Isssue: WP-528
PZP and PZH webserver and tls running on different ports

Check in PZH - PZH certificate exchange
PZH web server check if from same origin
PzhWS and PZH TLS standard response message format

Jira Issue: WP-528
PZH port handling during certificate exchange

Jira Issue: WP-528
Cleanup

Jira Issue: WP-528
Merge to latest master

Jira Issue: WP-528
Merge pull request #421 from habibvirji/WP-528-Refactor-PZH

Wp 528 refactor pzh