+ added defined code structure + started implementing generic outputs + added support for multiples windows + switched to frame-based architecture