Add found TagHelperDescriptors on a Razor page to GeneratorResults.

- Ultimately this enables tooling to inspect what TagHelperDescriptors were found on a document and construct HTML schema based off of them.
- Added XML doc on the classes I touched that didn't have docs.
- Added [NotNull] to the result construct parameters.
- Added tests to validate that TagHelperDescriptors flow when found after parsing a Razor document.

/cc @dougbu @pranavkm 

#215
The `TagHelperDescriptor` resolution is kind of optional (see below) which would then makes the descriptors list here empty all the time. Sad truth is now that we're adding this capability to the editor/tooling it's becoming more than an optional concept.

Not to mention the current mechanism to opt-out of `TagHelperDescriptor` resolution involves setting the `TagHelperDescriptorResolver` to `null` (not obvious).

Lastly, assuming we could move it somewhere else it'd be a secondary API entry point for the editor when currently this class is the editors entry point, ex: `DesignTimeLineMappings` is editor specific.