Fix target host variable from being overwritten

The target host parameter of the compute api evacuate method
is mistakenly overwritten before being used. The result is
that the instance rebuild operation is tried against the
original failed host and will always fail.

Rename locally used variable to a different name and modify
relevant test to prohibit this from happening again.

Resolves bug 1133204.

Change-Id: I517b2dc19d9561723391150105b4943b56dba637
Refactor compute manager _get_instances_by_driver

Make the method more efficient by only querying nova-conductor
once. Also limit fallback instance query to host only. This is
in preparation for fixing bug 1129519.

Change-Id: I7de14f1ffda37c14f760f602fd81250d2163b430
Merge "Fix target host variable from being overwritten"
Merge "Refactor compute manager _get_instances_by_driver"