Project helper and common fs functions

Future.wrap throws error so I refactor deleterDirectory to use `new future`
Written like this, if the method fails to find the project dir, it will reattempt to do so at every invocation. The old code was written so that the code searching for the project dir always ran only once. That's the reason the code explicitly used to check for `""`.