When calling render with a custom template, use controller with same name

I was thrown off by having to specify a matching controller name when calling `render` in `renderTemplate` with a custom template name:

    this.render 'sidebar', controller: 'sidebar'

Whereas calling:

    this.render()

will automatically identify the correct controller based on the route name.

With this commit, `render` will look for a controller with the same name as the template and use that instead. Otherwise, it falls back to the previous behaviour.

I wasn't sure where to put tests for this.