Flush memcache during tearDown steps

This avoids the case where data from a previous test remains persisted and conflicts with subsequent fetch()/contains() of the next test.
File caches should always return boolean values for save()
Extract common setup()/tearDown() for file-based tests
Assert method return values and test additional PHP types in base test
Test deleteAll()/flushAll() behaviors for providers that share storage
Merge pull request #22 from FabioBatSilva/namespace_version

Reset namespace version
Merge pull request #18 from doctrine/test-improvements

Test improvements
MongoDB cache provider
Support invalid UTF-8 strings in MongoDB cache provider
Merge pull request #17 from doctrine/mongodb

MongoDB cache provider
Build improvements
temporary apcu fix