Merge branch 'release-2.2' into develop

* release-2.2:
  Bump version for 2.2.5-pl release
[#8176] xPDO->updateCollection() fails to set NULL values

Addresses modxcms/revolution#310 from @grachov
Deprecate xPDO->getMicroTime()

Was implemented to support PHP 4 emulation of the microtime() call with the PHP 5-only get_as_float parameter set to true. No longer needed.
[#8320] Preserve order of $columns in xPDOObject::getSelectColumns()

When $exclude==false and $columns are specified, xPDOObject::getSelectColumns() will now preserve the order specified in $columns rather than reordering the returned values according to the order of the columns in the field map.
[#8148] Prevent update from criteria using raw NATIVE_KEY on install
[#6930] Fix improper escaping of $ in parseBindings
Add xPDOObjectTest::testValidate() unit test
[#8423] Add flock-independent file locking to xPDOCacheManager::writeFile()
[#8440] Add memcached implementation of xPDOCache (xPDOMemCached)

The current xPDOMemCache implementation uses the memcache PHP extension - http://www.php.net/manual/en/book.memcache.php
xPDOMemCached uses the memcached PHP extension - http://www.php.net/manual/en/book.memcached.php
[#8423] Fix tmpLockFile naming issue in xPDOCacheManager::lockFile()
[#8962] Prevent xPDOSimpleObject from overwriting xPDOObject map entry
[#9023] Fix removal of subdirs when deleteTop = false in xPDOCacheManager::deleteTree()
[#9020] Allow xPDOZip to pack empty directories
Remove unneeded require
Set log_level and log_target from xPDO constructor options

These were never being set by the xPDO constructor, essentially ignored when passed via the options parameter
[#8423] Add multi-node support to flock-independent file locking

Also removes LOCK_EX from file_write_contents() when writing the tmpLockFile to prevent errors on platforms that trigger PHP errors when flock functions or flags are used
[#9272] Implement NFS-safe flock-independent file locking
[#9020] Prevent xPDOZip from attempting to add empty targets

Was attempting to add targets defined as '/' previously
[#9629] Fix notice in xPDOConnection::getOption() when $options not an array
[#9062] Fix problem loading multiple xPDOQuery driver classes