Fix for Codeplex-1383 for WebAPI

This change attempts to block creating a route with a route constraint
that we can't handle is some common scenarios (MapRoute, Attribute
Routes).

There are still plenty of ways to create a route with invalid constraints,
and due to extensibility scenarios we can't protect against those. In
those cases there will still be an exception throw when the route is
executed.

MVC Changes to follow.