C++ game prototyping framework based on component system