Implement HasteUpdateServer

1. Long running process for updating resource maps
2. Can run for multiple haste instances and resource maps
3. When a file changes it will be swapped out in our in-memory file list to be analyzed and updated on disk
4. Maps are persisted back to disks
5. A net server starts for querying status

Designed to be used by CLIs to start the server if not started. Will probably need a few changes come _real_ integration time (done some testing on devservers)
Prefer `new Promise(...)` form

I imagine the reason you're using defer here might be because we do that elsewhere in jest -- but I think  we should switch those other places to use the spec-standard form at some point, too