How difficult such a merge will be to implement depends greatly on how complex the apps are. As long as the two apps use the same script and data, then it is quite easy to create an app which contains objects with properties that are identical to the properties of the two apps. What will be difficult is to ensure you preserve the correct child/parent hierarchy between the objects. You will for instance need to ensure that each cell of a copied sheet contains a reference to the copied generic object it contains.
To get you started, you can have a look at this example which illustrates how to get the layout of all objects of an app: https://help.qlik.com/en-US/sense-developer/3.0/Subsystems/NetSDKAPI/Content/CodeExamples/App-Preload.htm
You might also want to look at this example that traverses all the objects of an app: https://help.qlik.com/en-US/sense-developer/3.0/Subsystems/NetSDKAPI/Content/CodeExamples/App-Traverse.htm
You could also check out http://branch.qlik.com/#!/project/56728f52d1e497241ae6987d which will output a json structure of your app, you can then merge them together.
Something to keep in mind is that embedded assets such as images can be a pain to move between apps.
This is an example of how to build a qvf based on a json structure https://github.com/mindspank/buildapp
The link you provided above for producing a .qvf from a .json was very helpful. Using enigma.js, I have been able to duplicate Qlik Sense applications successfully using Node.js (to the most part).
I am stuck on the following problem - how do I leverage the Qlik Sense API's to duplicate applications that include master visualizations?
Any help would be greatly appreciated!