Make code runnable.
Add Widget and SpecialAllocator classes.
Add CMakeLists.txt files.
Add .gitignore file.
Merge branch 'master' into item02
Fixed CMakeLists.txt files.