Test improvements

This PR implements a few things:

 * Flushing memcache between tests
 * Enforcing boolean return values in file cache methods
 * Using a common setup/teardown routines for file cache tests
 * More assertions for provider method return values in common test
 * Testing additional PHP types for CRUD methods in common test
 * Testing behaviors for delete/flush when multiple provider instances share common storage

The last case is something I brought up in IRC. In general, I found the namespace incrementing a bit weird when multiple provider instances are at play. It's entirely possible for providers to increment themselves into a namespace that already contains data. I'm not sure that there's a trivial solution for this, but these tests seek to document the current behavior.

I have not tested the following backends:

 * [ ] CouchbaseCacheTest
 * [ ] RedisCacheTest
 * [ ] WincacheCacheTest
 * [ ] XcacheCacheTest
 * [ ] ZendDataCacheTest