Parser raise error on directory paths.

If the parser find a directory path as the output for a rule then it
raises an exception, there is no reason to give a directory path as the
output file since we're copying files not directories.
Update TODO.