PrepareHandler should use the existing iterator to re-prepare on all hosts

Description

Discussion: https://github.com/datastax/csharp-driver/pull/486#discussion_r375925022

Regardless of the origin of the iterator we should use it to prepare on the remaining hosts and possibly remove PrepareResult.

We could also change how we get this iterator in this ticket to remove the LBP dependency. If we do this I think we should make the iterator iterate through all hosts with a Local distance (similar to how session warmup works at the moment - https://github.com/datastax/csharp-driver/blob/f38d0ddb6f21072219030fc11986570a2ce92b9f/src/Cassandra/Session.cs#L248).

Environment

None

Pull Requests

None

Assignee

Unassigned

Reporter

Joao Reis

Labels

None

PM Priority

None

Fix versions

None

External issue ID

None

Doc Impact

None

Reviewer

None

Pull Request

None

Epic Link

None

Sprint

Size

None

Priority

Major
Configure