A base C++ class for creating a shell-like application