Allow default configuration to be overridden by constants in wp-config.php

Supports alternative Redis configurations without requiring hacks to the plugin file
Rename a function to follow WP Coding Standards
Serialize data when necessary as Redis only accepts strings. Also, properly store non-expiring values.
Support delay before flushing Redis
When clearing the cache, also clear the internal one.
Correct error in how additional global and non-persistent groups are added, which corrupted the arrays holding those groups.

In 868c0a8cd, I blindly copied two missing functions from another object caching plugin, not paying enough attention to how that plugin managed the data versus how this plugin does. As a result, the arrays of groups had some entries keyed by the group, others were unkeyed and the value represented the group.
Helps to return values after modifying them, as I failed to do in 01b7283c0.
Simplify `get()` method's logic rather than duplicating Redis lookup calls.

Also fixes a code error introduced in 01b7283c0, where the key, not the retrieved value, was passed to the `restore_value_from_redis()` method.
Correct order of arguments passed to `setex()` as they were incorrect--the expiration and value to cache were inverted.

Bug has existed since baa6de524 but was masked by serialization bug fixed in 01b7283c0.
Remove irrelevant arguments related to multiple servers (holdover from Memcache basis) and update PHPDoc accordingly.
Remove methods held over from original Memcache plugin, but that aren't part of Core's object cache implementation.

While some do have equivalents in Redis, others don't. For now, aim for something streamlined and the extras can come later.
Removing more references to Memcache
Implement `increment()` and `decrement()` methods for the corresponding `wp_cache_incr()` and `wp_cache_decr()` functions.
Remove `wp_cache_increment()` and `wp_cache_decrement()` as they aren't part of Core's implementation.

Users switching between cache backends shouldn't have to worry about function names changing. That's not how Core's object cache is designed.
Add tracking of cache hits and misses, and the attendant function that the Debug Bar plugin uses.
Match function order to Core's template and add a function that Core has but we're missing.
Consistency in function naming and internal references
Introduce `replace()` method by repurposing existing `add()` method to be more flexible.
Add handling for the various responses Predis returns after performing an action, ensuring a boolean always results.
Add method for changing the blog-specific cache prefix when switching blogs in a multisite environment.