Cleaned up ApphookPool class:

- reordered class methods to better reflect class functionality
- method register(self, app) now doesn't check class supplied by user, just to see it's already registered
- cleaned self.block_register True/False assignments in discover_apps()
- removed discovered check from discover_apps since it has nothig to do with app discovery as such
- changed some exception messages
Fixed typo in get_apphooks() method
Clean up utils.page_resolver logic

get_page_queryset_from_path now always returns a queryset, previously it
was capable of returning a PageQuerySet, Page model or None, which both
the callers had to hack around. Also simplified the logic internally,
while taking care to preserve behavior:

* Querying for "home" is unnecessary if path is provided
* Handling IndexError/DoesNotExist is unnecessary, now we return a
  queryset with 0...1 results
* get_page_from_path docstring lies about "Raises exceptions is page
  does not exist"
Avoid query for uncommon case where CMS roots are not visible

This saves a database query from every CMS page load. Originally
introduced in commit 61f56dd14751bab4c0232a62afb87555216a67f4 with no
rationale. These are the edge cases where it makes a difference, as far
as I can tell:

* It forbids seeing published subpages when all roots are unpublished.
  But why the special treatment of roots and not caring about other
  intermediary levels? And it checks for any roots regardless of
  placement, even if it's in a different hierarchy.
* It prevents seeing a draft version of a page if there are no draft
  versions of any root pages in the site. If that's at all possible, it
  seems like a bug?
More changes in ApphookPool class
Fixed: SyntaxError: invalid syntax
Fixed adding redundant apphooks when APPHOOKS is set
Fixed adding redundant apphooks when APPHOOKS is set
Rename argument in register method to be more self-explanatory
Removed direct reference to apphook_pool fields. Now they're accessed through get_apphooks and get_apphook methoeds.
Fixed typo - remove one apphook_pool from calling chain
Improve reusability of PageSmartLinkField and PageSmartLinkWidget
Fix typo.
Fix #3155
Merge pull request #3171 from yakky/feature/issue_3155

Fix typo.
Fix authors argument on python 3.4
Fix #3121
Enable Python 3.4 classifier
Merge pull request #3172 from yakky/feature/develop_py

Fix authors argument on python 3.4
Update tree_component.js

Changed regex for the path, to work with CDN's that attach a query to static files like tree_component.js?Signature=Pte%2BCS0PEtQDOSS%2
Merge pull request #3175 from frewsxcv/patch-1

Enable Python 3.4 classifier
Update custom_plugins.rst

It is not clear that plugin is copied every time the page is published.