Fix #1287 - Port WebAPI parameter binding behavior

This change modifies the default parameter binding behavior for an
ApiController to use the WebAPI rules.

'simple types' default to use route data or query string
'complex types' default to use the body (formatters)

Adds ModelBindingAttribute to enabled model binding
Can you also add an action where the parameter is `string` (as you know this is bound from uri, so its interesting to see here)...also could you add an action which takes data from uri and body (ex: PutEmployee(id, Employee))..