Add TagHelperScopeManager for TagHelper runtime.

- The TagHelperScopeManager is responsible for TagHelperExecutionContext lifetimes.  The execution contexts are the objects responsible for tracking TagHelper data such as HTML attributes, all attributes, tag helpres for a specific HTML element etc.
- Also added an interface ITagHelperScopeManager so we can activate the type via DI.
- Added tests for TagHelperScopeManager functionality.

#155
- this isn't a contract, it's the `/// Class that manages <see cref="TagHelpersExecutionContext"/> scopes.`
- nit: nix "Defines a" and "that is"
- nit: no need to mention `<see cref="TagHelper"/>`