Make readonly collections truly readonly

These methods actually returned mutable collections that happen
to implement the readonly interfaces. User could cast them to
the actual type and add things. I'd rather avoid even that
possibility by making these truly return readonly stuff.
Remove old documentation copying build task
Add `DocPlagiarizer` package to `Octokit`
Add `DocPlagiarizer` package to `Reactive`

project
Updating some interface documentation

where the implementation documentation seemed better.
Generate documentation comments for the

`Reactive` project
Merge pull request #396 from pmacn/docplagiarizer

Updating projects to use Docplagiarizer NuGet package
Add custom assert for readonly collection
Merge pull request #394 from octokit/haacked/proper-readonly-collections

Make readonly collections truly readonly
Make DocPlagiarizer a development only dependency

Otherwise this gets propagated to those who install
Octokit which is not what we want.
Merge pull request #398 from octokit/haacked/package-cleanup

Set doc plagiarizer as a dev depondency
Missed one case
Merge pull request #399 from octokit/haacked/one-more-readonly-fix

Missed one case
Internalize ProductHeaderValue

What Haacked, PaulBetts, and Shiftkey suggested
Removed new line, doh.
More newlines

And usings :thumbsup:
Third Time's a charm
Merge remote-tracking branch 'origin/master' into internalise-ProductHeaderValue
Merge pull request #406 from trsneed/internalise-ProductHeaderValue

Internalize ProductHeaderValue
Add interface and required entities for Commit Comments.