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)
nit: Just throw and you won't have to worry about remembering to return after the `reject()`