Use collection with fast reads for prepared queries

Description

During review of CSHARP-678, in which there was a change of the Prepare code, there was this comment: https://github.com/datastax/csharp-driver/pull/442#discussion_r281957480

ConcurrentDictionary<T>.Values get property is an expensive operation (acquires all locks).
We should use a collection for prepared queries where reading is cheap.

Environment

None

Pull Requests

None

Status

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