Remove all hardcoded port in tests

This should fix the 'Address already in-use' failure in travis and when
tests are run in parallel, this change also simplify the static discovery
service interface.