Add tests for TextHelper::autoLink()

Add tests for email addresses embedded in urls.

Refs #2403
Fix autoLink() when URLs contain email addresses.

Add whitespace lookbehind to ensure the email address is preceded by
whitespace, this obviously means that emails starting with word/symbols
are not detected, however those symbols are generally valid in an email
address anyways, and will form the local part.

Fixes #2403
Add tests and fix other cases where autoLinkEmail would fail.

Refs #2403
Moved exception throwing to after paging info it set for request.

This fixes the regression caused in 2096d3f632. When catching exception
thrown by PaginatorComponent::paginate() in controller, developer again
has access to paging info in request object.

Closes #2402
Merge pull request #2408 from ADmad/2.4-paginator-exception

Moved exception throwing to after paging info it set for request.

Fixes #2402