Add mocks of the core YARN entities, and refactor the AppState to take on more of the work of the AM -while still remaining a "model" and loosely coupled with the AM itself (so the mock can sneak in easily)
AM switches to RMOperationHandler queued ops when releasing all nodes
AM switches to RMOperationHandler queued ops for node flexing
refactor: Move entire allocation handler to appstate by having it buld up a list of yarn operations (releases) and container assignments to use in launching
tracking surplus containers so that when they are dealloced -no confusion sets in. more stats and tests