Hi @rdemeraT,
Welcome to the community
You would only use App.sol if you were creating Ethereum Packages but the plan is to remove this contract. (See OpenZeppelin/openzeppelin-sdk#1488)
I haven’t ever used App.sol myself whilst creating upgradeable contracts.
To learn more about upgrades see the Learn guide: Upgrading Smart Contracts
- Buidler user: Create an upgradeable contract using OpenZeppelin Buidler Upgrades
- Truffle user: Create an upgradeable contract using OpenZeppelin Truffle Upgrades