API/DOC: Specification for `names` parameter in read_csv
On `master` (<a href="https://github.com/pandas-dev/pandas/commit/04356a83c0dc8a749c84e168535e6673f2548ec6">04356a</a>), the documentation is unclear as to what a valid `names` parameter is for `read_csv`.

* Does it need to have the same length as the number of columns in the file? OR
* Does it need to have the same length as `usecols` if specified?

I find evidence in the test cases to support both (C engine allows both for example, but the Python engine disallows the former).  This point should also be clarified in the documentation.

xref #14671.