Add edit capability to `ember init`

* This has been added to edit-file-diff model in order to more easily
* abstract when `ember update` is a thing

When you run `ember init` a new option is given.  If you select it the
following events take place:

1. A tmp file containing the .diff of your file as compared to the
blueprint file
2. A child process is spawned with whatever command is set to $EDITOR
with an argument of the above tmp file path
3. On the 'close' event of this child process the diff you've edited is
applied to your file
4. the tmp file from step 1 is removed
5. normal process resumes