Fixing .gitignore and adding lagbackup.backup pkg

The .gitignore file I imported included a Backup/* entry from Visual
Studio which made git ignore the most important package from the app :)
AsyncTask now using an ExecutorService

Instead of extending Thread, now AsyncTask has a cached thread pool
private static final ExecutorService, and submits a Runnable to it when
start is called. Instead of providing all the Thread overhead, now just
provides start and cancel methods.
Adding git root on Intellij
Using try-with-resources and adding file encoding

We tried using the pt-BR locale before, which didn't change anyhting and
just created some problems with default encoding. Now we removed the
useless default encoding set and set UTF-8 as the encoding for the files
created by the program to avoid similar issues in the future. Also used
try-with-resources instead of manually closing the file (which was being
done wrongly before, in no finally block).
Adding serialVersionUID to BackupException

Eclipse kept complaining about it and it was the only warning being
raised.
Simplifying BackupFile factory method

Hadn't noticed that the method in the end became three identical
constructor calls with only one different parameter.
Custom message when skippable errors occur on del

When doing a backup deletion, some files just cannot be deleted due to
write protection or something like that. Returning a boolean flag from the
delete task so that we can display a custom message when that happens.
Improving Backup creation dialog UI

Improved the backup creation dialog by adding an actual layout element
which will allow the user to select the backup file final destination,
instead of unexpectadly showing a file chooser dialog when the user
presses the create backup button. Also changed the FolderAssociationView
class name to FileChoosedElement, which is much cleaner, and more generic,
just how the view has become (some modifications have been done).
Adding the Parallel.forEach API

Adding the Parallel.forEach API which uses a cached thread pool to
iterate through a collection using a maximum of 4 threads (number can be
easily adjusted). It performs significantly better than the normal for
when the operation can be efficiently parallelized, like for when handling
files or network operations (which aren't bottlenecked by the processor).
Using Parallel.forEach on all backup transactions

Change has improved performance by aproximatedly 50%.