Refactors select_destinations to return HostState objects

This is needed because we will need to pass 'limits'
(resource oversubscription values for the compute host)
attribute along with filter_properties to the compute manager.

Partially implements bp cold-migrations-to-conductor

Change-Id: Ide3a9781f66f961ff4aceadc00275de91c6c1030
Merge "Refactors select_destinations to return HostState objects"
Merge remote-tracking branch 'm_src_repo/citrix-fixes' into build-temp