Index page templates

This allows us to support a new operator called hastemplate,
which behaves similar to incategory.

While we're at it, remove some of the more crazy intentional fall throughs
in the filter parsing switch statement.  They created a painful maze.

DEPLOYMENT: This change requires an in place reindex to function properly.

DEPLOYMENT: After the in place reindex hastemplate still won't find pages
unless those pages have been modified since the release.  A full (non in
place) reindex will pick up all the pages but is not required unless we
want to market this feature.

Change-Id: I9c9b75db7ed1444d5b9bcbd05e423e0841a7d729
Merge "Index page templates"