[BUGFIX #4248] Route#viewName overriding explicit name parameter when calling render method

Fixes #4248 

*Edit: copied my description from bug report since it was closed in favor of this PR*

Demonstrated in http://jsbin.com/ucanam/3502#/first
Both routes should be rendered with the same view, since they are both extending a route which is explicitly rendering using the name parameter.

The sources from which controller, view and template is derived in the render method should, from what I've been able to gleam from tests and code, be the following:

1. From the options hash ({view: 'foo', controller: 'bar'})
2. From the name parameter (either a template- or a view name)
3. Explicitly defined route properties (`this.controllerName`, `this.viewName` etc)
4. Route defaults (resolved using `this.routeName`)

`this.viewName`, as demonstrated in the fiddle, does not respect this order and will have higher precedence than the name parameter.