Ensure temp project path does not exist prior to invoking Phoenix.New.run

While running tests i was getting this error:
```
1) Mix.Tasks.Phoenix.NewTest: failure on setup_all callback, tests invalidated
     ** (RuntimeError) No shell process input given for yes?/1
     stacktrace:
       (mix) lib/mix/shell/process.ex:120: Mix.Shell.Process.yes?/1
       (mix) lib/mix/generator.ex:16: Mix.Generator.create_file/2
       (phoenix) lib/mix/tasks/phoenix/new.ex:30: Mix.Tasks.Phoenix.New."-run/1-lc$^0/1-0-"/4
       test/mix/tasks/phoenix/new_test.exs:8: Mix.Tasks.Phoenix.NewTest.__ex_unit_setup_all_0/1
       test/mix/tasks/phoenix/new_test.exs:1: Mix.Tasks.Phoenix.NewTest.__ex_unit__/2
```
Perhaps i've interrupted the test run before it ended and the `on_exit` fn got the chance to be invoked.
In all subsequent tests the *tmp/@app_name* existed and it required confirmation to overwrite.
I added `File.rm_rf(project_path)` as the first thing to be invoked in *setup_all* to ensure the tmp dir doesn't contain a dir with *@app_name*