This commit brings many changes:
1. Remove cotire;
2. Remove PCH files (stdafx.xxx) and mentions;
3. Rearrange and clean includes:
3.1. Remove core includes path, use full header path core/xxx;
3.2. Move object_ptr to separate file base/object_ptr.h;
3.3. Add missing includes;
5. Add forward decls;
6. Get rid of some Qt private parts;
7. Fix ALL compilation errors after removing cotire on Windows, Linux, MacOS.
Closes#133.
Related to #96.
Regression was introduced in df64c97.
New base::flags work correctly only if all mutually exclusive flag
values use mutually exclusive bits (a & b == 0 for exclusive (a, b)).
Closes#3856.