Reconfigure cleanup

@agorrod, @sue -- this is the last piece of #1172.

Now we're merging the configuration strings, I changed the underlying reconfigure functions to error in the case of not-found being returned for a configuration string, because we're supposed to have all of them, all the time, now.

Sue, you agreed to do the review.  (I tried to keep the commits separate so it's not a monolithic chunk.)

Alex, I'm copying you on this one because there were a couple of functions I wasn't sure how to fix. Specifically, this chunk in `__wt_cache_config`:
```
/*
 * If not using a shared cache configure the cache size, otherwise
 * check for a reserved size.
 */
if (!F_ISSET(conn, WT_CONN_CACHE_POOL) &&
    (ret = __wt_config_gets(session, cfg, "cache_size", &cval)) == 0)
        conn->cache_size = (uint64_t)cval.val;
                        
if (F_ISSET(conn, WT_CONN_CACHE_POOL) &&
    (ret = __wt_config_gets(session, cfg,
    "shared_cache.reserve", &cval)) == 0 && cval.val != 0)
        cache->cp_reserved = (uint64_t)cval.val;
else if ((ret = __wt_config_gets(session, cfg,
    "shared_cache.chunk", &cval)) == 0)
        cache->cp_reserved = (uint64_t)cval.val;
WT_RET_NOTFOUND_OK(ret);
```
and pretty much all of `__wt_cache_pool_config`.  I'll try and catch up with you tonight and talk those over.

I don't see the `__wt_spin_destroy` to go along with this.  Did I miss it?