Added source code structure explanation