Re: can 2 developers develop a document at the same time
Good question. Kind of yes but mostly no at least with the out of box
When an application is published to a stream on the server , users can duplicate and personalize sheets,bookmarks and stories or write them from scratch using the data model and library of visualizations and master items published with the app. This is a kind of yes but this capability is more self service consumption than co-development.
The development of the approved content that exists within an app is done when the app is unpublished while it resides in the 'my work' area of the owner of the app. Since there is only one owner , security restrictions would prevent other non-owners from accessing it unless the owner duplicated the app and assigned the duplicate to a different owner. But if that was done, i don't know of any mechanism to re-integrate the work of the 2 developers working on disparate versions of the app . So that is the no.
I don't know the full API capabilities in this regard but there could be a way to write code that would integrate app components together, possibly with the check in/ check out paradigm.