This is still very much a work in progress. Couple of issues to note:
1. mapred-app might be a name that'll need changing. Basically, this define encapsulates everything that needs to be installed on every node that is to participate in mapreduce application execution (yes, even though YARN separates the app from the framework, you still need to create local subdirectories, etc.)
2. it is not clear whether different aspects of Application Manager (Resource Tracker, Scheduler, Resource Manager itself) can be deployed on different hosts or not. For now I clumped them together into a single resourcemanager definition with different ports for different services.