Update helm-source-projectile-dired-files-list and fix bugs

Use idiomatic way to build helm-source-projectile-dired-files-list and
add new features: from now on the entries listed in the source will
share the same faces with helm-find-files, include normal file, links,
directory and executable.

Now the Dired buffer listing in helm-source-projectile-dired-files-list
also contains full action listing as in helm-projectile-find-file.

Also fix bugs in add and delete actions of helm-source-projectile-dired-files-list:

- Currently, if an existing file/directory has the same name as the new
  name a user entered, then Dired will use that directory instead of
  creating a new Dired buffer and only allows inserting existing
  files/directories into the new Dired buffer. If a non-existing
  file/directory is inserted, Dired will signal an error and creating a
  new Dired buffer (as a result of adding more entries/deleting old
  entries) failed. We must create a temporary name of current Dired
  buffer name that is non-existent, so we can insert anything we want
  without error, and rename to the original name used entered later.
Update helm-source-directories-list

Use idiomatic way to build this source.
Update helm-source-projectile-projects

Use idiomatic way to build this source.
Update helm-source-projectile-files-dwim-list

Use idiomatic way to build this source.