Improvements to type() PageQuerySet method

This commit makes the type PageQuerySet method include all concrete
models that descend from the specified model in the filter.

This makes this method useful for cases where you have many page types
descending from a single abstract model and want to search across all
these page types (which you can't do in Django normally).
This doesn't execute an extra Query here. Django is clever and will embed this as a subquery in the PageQuerySet.