[Codeplex Feature #1787]: Support open complex type for WebApi

This feature is to support open complex type in WebAPI.
Open Complex Type is a complex type with declared and dynamic properties.

The user can use IDictionary<string, object> to define a property in his
complex type (CLR class), then the WebApi model builder can build this
complex type as open complex type. The end user can post their dynamic
properties for this open complex type to the service in the payload, then
he can get their dynamic properties from the service in the future to do
futher process.