Allow chaining in the addCrumb method

For convenience I think it might be valuable to allow addCrumb (and possibly other similar functions) to return $this to permit chained calls such as this:

    $this->Html->addCrumb('Admin', '/admin')->addCrumb('Blogs', '/admin/users')->addCrumb('Add');

as opposed to the considerably more verbose version that needs to be used now:

    $this->Html->addCrumb('Admin', '/admin');
    $this->Html->addCrumb('Blogs', '/admin/users');
    $this->Html->addCrumb('Add');

I'm not sure if this violates some API conventions for helpers but it does seem rather more convenient to work with to me.
Update HtmlHelper.php

Updated documentation to include the chained $this return
Update doc blocks to not be lies.
Removed arbitrary restriction on crud operations. Added some comments to explain parameters to mapActions() better.
on `cake acl delete <>` delete all matching records. Makes more sense than deleting one of possibly many.
Fixed CS issues. Fixed bug - added missing condition to find.
No array short syntax in 2.4\!
Fix yoda condition in File test
Adds phpunit required version to TestShell "not found" error message.
cs
more missing doc block tags added
more cs
fix indentation
correct missed cs errors
Change argument type to mixed in docblock, as debug() and pr() accept not just a single type
correct deprecation notices
generalize sentence
Only count `_id` if it is the last 3 characters in the field name.

This prevents issues when baking models for tables containing `_id`.

Fixes #3230
Fix email rendering when using 2 different plugins.

When an email template and layout are in different plugins the incorrect
plugin would be used for the layout.

Fixes #3062
Add file missed in last commit.