fetch() signature compatible with its parent
Revert "Nicer way to mock PDO in MySqlLock"

This reverts commit a9bd867b2da56ed026d7e2f745f28a76e214ebd3.

Mocked class can't be destroyed (unset($mock)) as phpunit keeps
reference to mocks internally, and so you can't test if object
clears after it self after it is destroyed.
https://github.com/sebastianbergmann/phpunit/issues/819
Rearranging test structure for testing Lock implementations
bugfix: Release locks gained by memcache implementor when it's destroyed

Also add support for this in PDO mock
bugfix: lock gained by one implementor should not be shared with others