Floating ip address updates

Fixes: https://bugs.launchpad.net/bugs/1364419

This is the second attempt to fix this issue. The first PR added code to use the floating IP address but it turns out that was only called at bootstrap, and then later the address poller overwrote the addresses. So extra code was needed in the instance gathering to also update the floating address details.
Can you please change "found" above to be the same type as in `Instances`, and then factor out this code to another function.