Feature - Improve ip address detection

Get rid of the need to fork `hostname -I` by listening on all IP addresses or using python to work out an IP address.

I've only been able to test this locally. I'm not 100% sure it will work right on an actual network of 2 or 3 machines.