Implement $protocol parameter in Config base_url() and site_url() methods

Let's keep the implementation logic in one place.
Improves 2023c3d05b042cf1322286d69557c2b8bf3bd8d5.
Remove redundant changelog entry
Fix CI_DB_query_builder::_merge_cache() triggering E_WARNINGs

Kudos to kakysha for noting the bug & providing initial fix in PR #2698
Fixing the dumbest parser error ever
Fix #2703
Really fix #2703
Added option to connect through unix socket in redis cache driver
Correct Redis connection troubleshooting