Fix ZF-11921: Race condition in plugin loader include file cache

This fixes the race condition described at:
http://framework.zend.com/issues/browse/ZF-11921

For the race to disappear each and every line is made completely independent from the others. This is the reason why every line includes its own php open and close tag, and no file_get_content() is made, and the file is opened in append only mode.

To prevent the insertion of duplicates lines, a fast non blocking lock is made and kept until the end of the request, thus the static $h.

Tested on a highly concurrent server without a problem.
Code cleanup
Minor fix in PluginLoader.php
fixes #162. Back porting with a cut and paste
Added JSON_UNESCAPED_UNICODE and JSON_UNESCAPED_SLASHES to encoding GCM Data to JSON
Check that pathinfo() has returned an extension

Prevent the notice that is generated when pathinfo() doesn't return an
'extension' element in Zend_Validate_File_Extension.

Fixes #287
Merge pull request #294 from akrabat/issue-287

Fixes #287 - Check that pathinfo() has returned an extension
Merge pull request #278 from jeremyquinton/issue-162

Fixes #162 - Validate quoted local part of email addresses
Add missing </sect2> tag

- which was causing a doc build failure
Merge branch 'hotfix/docs-fix-gcm'

Fixes a documentation error.
[#293] Make new method public

- Since it's being invoked as a static callback, the method needs to be
  public. Renamed to remove the underscore prefix, and marked as public.
[#293] Ensure Zend\Xml tests pass on PHP 5.2

- Prior to 5.3, you needed to cast a simplexml node to a scalar in order
  to do comparisons.
[#293] Update .gitignore rules

- Discovered on installing PHPUnit to run tests that .gitignore was not setup to
  ignore composer.lock, nor the files installed in the bin/ directory.
Merge branch 'hotfix/293'

Fixes issues seen in #293
Rely on the autoloader to load PHPUnit_Runner_Version and PHPUnit_Autoload, instead of requiring their files directly.
Fixes #296 - Old locale data constants in Zend_Locale after CLDR update
Fixes DocBlocks in Zend_Locale_Format - Closes #299
Fixes #53 - Zend_Cache_Backend_Libmemcached doesn't pass Memcached::OPT_NO_BLOCK option through
Closes #286 - Wrong formatting for constant in Zend_Date docs
fixes #303 Allow zero count in assertQueryCount