Add FormTagHelper.

- Added the FormTagHelper.
- Utilized the IHtmlGenerator to share base functionality with the HTMLHelper counterparts.

#1246
a number of the `IHtmlGenerator` methods return `null` when they no-op. `GenerateAntiForgery()` and `GenerateForm()` aren't examples of this but let's be consistent: check `tagBuilder == null` and exit early
- below, don't dereference `antiForgeryTag` if it's `null`