Added support for non shared http servers.

 - can set option tcp to false / true to enable creating a
	TCP server
 - can set option sockJS to false / true to enable setting up
	a SockJS WS emulation handler on the read http server
 - can set option engineIO to false / true to enable setting
	up an engine.io WS emulation handler on the read
	http server
 - can set option sharedHttp to true / false to enable using
	a single HTTP server for both writes and reads
 - refactored code into more functions
use http.server for listening in tests