emulator program to support new directory structure and some code cleanup and
refactoring.
Change-Id: Ib3cf5c0123cd87497517d4221edea5883db9157d
Former-commit-id: 31ae04c92a [formerly 1d3f3da9cc] [formerly 0f4f24beb8] [formerly f8b6ec20c1 [formerly 0f4f24beb8 [formerly ad7acb2d563c79d92d84ec62405b492907191af3]]]
Former-commit-id: f8b6ec20c1
Former-commit-id: 2eb604c37ee47829cda515d4a57729d8b240989d [formerly 751188ab5a]
Former-commit-id: 3af47effc5