Issue #100: Every single page should have a <title> appropriate for the page's content

I have added a \<title\> tag to each page in the most efficient way possible.

I have moved the ng-app attribute onto the \<html\> tag in order to allow Angular to access the \<title\> tag. The title tag is bound to the variable $rootScope.pageTitle.

I then added this code in main.js, inside MainController:

    $rootScope.$on('$routeChangeSuccess', function (event, current, previous) {
      if (current.$$route.title) {
        $rootScope.pageTitle = current.$$route.title;
      }
    });

What this does is check for a "title" attribute in each route definition (see app/pages/about/faq.js). If the attribute is found, the code above refreshes the page title. If the attribute is not found, this is because I have purposefully not defined it due to the route waiting on dynamic content. So, in instances when the title relies on content loaded after the route change (e.g. individual project page, person's profile, individual fundraiser page), I manually set $rootScope.pageTitle once the content has successfully loaded. This seems to be the most efficient way to do so.

For example, see the page title get manually set in app/pages/trackers/controllers/show.js:

    $api.tracker_get($routeParams.id).then(function(tracker) {
      $rootScope.pageTitle = tracker.name + ' - Project';