restore websocket_url configurable

allows ws to be handled via separate proxies, as appears to be the case on OpenShift and some other hosting services.

closes #6001
Agreed with @ellisonbg , But, doing so will conflict with @jdfreder work on require, I would add a comment that this has to be done (and open an issue for that) and do it later. 

There are other similar refactoring that Jon want to do later.