Resume passing client_ip when making a WebSocket connection to the bridge
This feature had been inadvertently lost in !29 (merged). It was causing a partial loss of geolocation data at the bridge. Fixes #82 (closed).
The operative commit is dcc24dfd. The other commits are adding tests and refactoring.
@shelikhoo, @WofWca, you have interacted with this part of the code recently.