Bug 1058997 - Part 1: Extract socket connect and listen. r=past

Relocate the debugger client's connect and server's listen functionality in a
separate file.  This isolates the security-sensitive socket handling pieces, and
also enables easier extension to make room for TLS sockets.
Bug 1058997 - Part 2: Debugger socket style cleanup. r=past
Bug 1058997 - Part 3a: Move allowConnection to socket listener. r=past

In the future with multiple types of socket listeners (bare TCP vs. TLS), each
will need its own logic for allowing connection.  This is moved to the listener
level, rather than living at the level of the entire server.
Bug 1058997 - Part 3b: Update non-trivial security prompts. r=past
Bug 1058997 - Part 3c: Remove always allow init calls from tests. r=past
Bug 1058997 - Part 3d: Restore always allow in listener tests. r=past
Bug 1058997 - Part 4: Only one DebuggerServer per loader. r=past

It was never necessary to pass a server reference to the socket listener, since
a given DevTools loader only ever contains a single server instance.