CA-103189: Add optional params to pool-apply-edition

Signed-off-by: John Else <john.else@citrix.com>
CA-103189: Re-use some CLI parameter extraction code

Signed-off-by: John Else <john.else@citrix.com>
CA-103189: Refactor host-apply-edition

host-apply-edition sets the specified license server address and port in
the host's license_server field, and rolls these back to the original
value if the server is out of license or unreachable.

This patch extracts the rollback logic out of the main implementation so
it can be used by pool-apply-edition.

Signed-off-by: John Else <john.else@citrix.com>
CA-103189: Use license server params in pool-apply-edition

Signed-off-by: John Else <john.else@citrix.com>
Change Pool.apply_edition logic

Pool.apply_edition should always try to apply the edition to all hosts
in pool, even if some of them already have the edition being applied.

Signed-off-by: John Else <john.else@citrix.com>
Log this error as an error rather than debug

Signed-off-by: John Else <john.else@citrix.com>
Merge pull request #1185 from johnelse/ca-103189

CA-103189: Add license server port and address params to pool-apply-edition