CHANGE-709 - Refactor logging infrastructure (continuation)

CHANGE-709 - Refactor logging infrastructure (continuation from earlier changes)
- fix chicken/egg problem with log initialization
- add explicit logging messages in more places
- relocate log-delete code to logwriter

Signed-off-by: DrByte <drbyte@zen-cart.com>
Add additional detail to help in interpretation of log data
Add test suite
Add vfsStream dependency to composer.json
Always good to actually add the test case :)
Merge branch 'v160' into upd_admin_logging

Resolved Conflict:
	admin/includes/languages/english.php
Collaborating on mocks
Merge branch 'v160' into upd_admin_logging
Merge branch 'upd_admin_logging' into db-mocking-for-logging
Refactor to share common methods dbPrepareLogData and $db->prepare
Deprecate zen_random_select()
Deprecating unused function zen_random_select() in favor of ExecuteRandomMulti or perhaps "order by rand".
It's not only unused in core code, it also randomly causes a bug in the queryFactory iterator, so requires fixing or removal. Currently choosing to remove.
remove mocked zen_db_perform - no longer needed
Refactoring just for test-ability
Simple cloning to set up functional db testing
Connect to db and run tests
Restore other test suites
Reset for habitat environment
$PHP_SELF issues
Keep consistency between catalog and admin
Merge pull request #204 from drbyte/deprecate-random-select

Deprecate zen_random_select()