fix(ngRoute): instantiate controller when template is empty

Before this change, $route controllers are not instantiated if the template is falsy, which includes the empty string. This change tests if the template is not undefined, rather than just falsy, in order to ensure that templates are instantiated even when the template is empty, which people may have some reason to do.

This "bug" was reported in http://robb.weblaws.org/2013/06/21/angularjs-vs-emberjs/, as a "gotcha" for AngularJS / ngRoute.

http://plnkr.co/edit/ugXbMOinzRg05CH3LUkO?p=preview a demo of it in practice