Add option gui-addr for dynamic gui address and port

This PR adds a `-gui-addr` option which allows you to dynamically specify address and port for the GUI interface. The setting defaults to 127.0.0.1:8080 and will only be set the first time syncthing is launched. In other words it does not modify your config.xml after initial launch. This closes #505.
Might be cleaner to let Go parse the address here, i.e;

```go
addr, err := net.ResolveTCPAddr("tcp", *guiAddr)
// if err is nil, we now have addr.Port and addr.IP
```