New truncate and truncateWords methods

New truncate and truncateWords methods, https://github.com/yiisoft/yii2/issues/2941
Update BaseStringHelper.php

Length check.
Update CHANGELOG.md
Update BaseStringHelper.php

Updated to use mb_* functions
Test case for new truncate methods.

Test case for new truncate methods.
Update BaseStringHelper.php
Update BaseStringHelper.php
Changelog update
setting writable folders in init-script

It is said, that these folders are handled already by composer.json, what is definitely true. But if I can't (or don't want to) call composer create-project command, I have to run post-create-project-cmd manually like `composer run-script post-create-project-cmd`. IMHO, it's consistent to make such preparations in init script.
no need to set writable folders for console
removed unnecessary lines regarding writable dirs
Update console.md

corrected app dir example and removed license code from example.
guide toc udpate [skip ci]
updated guide toc links. [skip ci]
Reorganized guide.
guide wip [skip ci]
finished upgrade chapter [skip ci]
Remove empty ActiveField errors and fix bootstrap templates
added case insensitve LIKE to PostgresQueryBuilder

fixes #3252

also improved unit tests for querybuilder buildLikeCondition
filterWhere for postgres ILIKE

fixes #3252