Add TagHelperRunner for TagHelper runtime.

- The TagHelperRunner is responsible for calling into the process methods of the TagHelpers.
- This involved adding the following core classes: TagHelper, TagHelperExecutionContext, TagHelperOutput, TagHelperContext.  All of which aid in running TagHelpers.
- Tested TagHelperRunner, TagHelperOutput and TagHelperExecutionContext.

#154
oh, here's my earlier comment :smile_cat:  I'm fine if the class gets renamed but am not keen on checking in something "real" (not a stub) you know is about to change.  will look at #157 and come back here.