You could simply add a .txt file in your project folder for documentation (or .md if you want to get fancy). It would get committed to the team server just like any other changes/files. Most of our Github repos already have this kind of README.md, although most of them are widgets. It is not possible to add text files in the model itself.
If you update the .txt or .md file in the project folder, when you merge branches, will the updates on these file also get merged in?
Another approach is to use a Snippet, and add your documentation into a Text widget there. You can exclude the Snippet from the project so it won’t be included in the build, but can be committed in the project. This is an approach a lot of Marketplace Modules use.