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.