added Microsoft.AspNet.StaticFiles package to be able to serve static files for the sample
sorted dependencies corrctly on sample
Add using statement for extension methods.
Fix test.
Chaning unit test to use Mock.Setup instead of setting it directly
[#732] Attribute Routing: Implement `~/` for overriding a prefix

This change allows a user to override a route prefix set using
[Route("...")] on the controller by providing a route template
 on the action that starts with "~/" or "/". For example,
 [HttpGet("~/...")] or [HttpGet("/...")]

If the user specifies a template in [Route] that starts with "~/"
or "/", we will just strip the prefix from the template and use
the remaining part of the template.

The reason to do this is that there's a reasonable extensibility
scenario where a user can implement a global prefix for routes as
a convention (using IReflectedApplicationModelConvention), and use
~/ to escape that prefix (just like we support with action-level routes).
Addressed feedback:

1) Updated StartsWith calls to use StringComparer.OrdinalIgnoreCase.
2) Trim the end of the right part of a template when it doesn't start
   with "/" or "~/" and added tests to cover both scenarios.
3) Fixed the format of tests to move all asserts before an // Assert
   comment after it, and remove aditional // Assert comments from the
   tests.