[NEW] #6 add command line tools support

Added support for use framework in command line tools
[NEW] #6 add shell
[NEW] #8 add string reference class
[UPD] #8 use constexpr instead macros
[NEW] #8 replace const String& by const StringRef&
[FIX] #6 fix filesystem listfiles + file read buf

- Fixed file read to binary buffer
- List files now searchs in packs also
- Fixed StringRef compare operators
- Added startsWith, endsWith string utils
[UPD] #6 fix foreach auto reference
[FIX] #6 fix load files from zip

Zip files opens once on startup and closes on shutdown
[NEW] #6 add resource manager

All content must be loaded by resource manager. Every resource type must
be registered and can be preloaded by type or by manifest (list of
preloading resources).
[UPD] #6 add test code for shell and resources
[NEW] #6 add window system

- Window management system
- Windows implementation of window driver
[NEW] #6 add subsystem registry
[UPD] #6 cleanup comments
[UPD] #6 move fatalError to global func
[NEW] #6 add input system

- Input management system
- Windows implementation of input driver
[NEW] #6 add session subsystem

- Client subsystems initializes in session
- Subsystems creation/destroy moved to init/shutdown
- Updated log messages in subsystems
- Game loop moved to session
- Platform event polling moved to input system

close #6