Prevent flushing when writing out from the formatters.
Also make the XML formatter respect object as a return type.

Issues: MVC/1073, MVC/972, MVC/958

1072 is a followup work item to add test coverage.
Updated to use the new target framework in project.json
Changed remaining ifdefs from K10 and ASPNETCORE50
Adding support for flush points in Razor pages

Fixes #1042
[Fixes #734] Attribute Routing: Implement Name

1. Added support for Name in attribute routing. Name can be defined using [RouteAttribute]
and the different Http*Attributes, for example [HttpGet].

2. Names defined on actions always override names defined on the controller.

3. Actions with a non empty template don't inherit the name from the controller. The name
   is only inherited from the controller when the action template is null or empty.

4. Multiple attribute routes with different templates and the same name are not allowed.
Updating FunctionalTests to use HttpClient abstractions
Take advantage of nameof to improve our usage of MemberData across the code base.

Substituted all instances of [MemberData("PropertyName")] for [MemberData(nameof(PropertyName))]
This change enables us to take advantage of IDE features like Navigate to source,
find all references, etc. When using Visual Studio.
Updating ViewStartUtility to use IFileSystem.TryGetParentPath
Updating ViewStartUtilityTest to use fixed set of files on disk instead of
creating new ones
Moving tests that touch disk to functional