Updated prepareDestination

There is support for single files. With a single file specified as the
output the parent directory is checked for existence but NOT created,
like when specifying a directory as output. An error is thrown when the
parent directory does not exist for a single file output.
Only watch templates (dev mode) when watch flag is set