CMFM: Fixes and Improvements

* Some performance improvements:
    - Use stat instead of ls. This allow improve listing of directories with
    symlinks. Symlinks are resolved by File.getCanonicalFile.
    - Simplify ls, fileinfo, find and readlink command
    - Simplify the parsing of FolderUsage (only type, size and category is
    required), and avoid to load a lot of on unused objects
    - Add new file datetime information from stat: access, change and modify
    - Improve list, find and resolvelink java commands
* FadeEffect and symlink handling
* Remove context from AIDHelper and add new helpful methods
* New getAbsolutePath method
* Use file separator for paths and ROOT_DIRECTORY for root directory path
* Organize startup
    - Initialize variables prior to register receivers
    - Load AID data for improve performance through caching
    - Load the theme base used by AOSP widgets
* Allow Editor to show zero-length files
    Allow the editor to load zero-length files (like /proc/mounts) and
    change the buffer type to no editable in binary files.
* Invert allowed mount points detection.
    This change inverts the algorithm for prevent unmount needed rw
    filesystems. Now uses known restricted filesystems instead of known
    allowed filesystems. Now filesystems like yaffs2, fuse, and other linux
    filesystems are allowed by default.
* Remove unused xliff namespace
* Add flagNoFullscreen to EditText widgets
* Fix listview selectors of history and bookmarks
* Fix race condition
    When the command was executed prior to block the execution, the thread
    wait for the timeout. Add a sync access check to ensure that prior to
    lock and wait the program executed is not finished.
* Fix for async programs
    When the partial buffer received for an async program is not complete
    (ends with a EOL), the partial buffer was discarded. Add a new buffer
    with this lost chars to complete this bytes next time
* Fix list command
    Use -n1 for xargs in list command to prevent "argument line too long"
* If parent is null then assume that it is the root folder
* Use only name and parent for equals method on FileSystemObject
    A FileSystemObject is the same if his name and path are the same.
* Increase performance of adapters
    Use argument data when possible to avoid call the adapter methods
* Do not clear selection on some actions
    Actions like create new file/folder, show properties and other actions
    that explicit requires clear the active selection, shouldn't removed the
    active selection.
* Add a new additional line to dialog messages to fill the dialog
* Fix spanish translations
* Fix theme roulette on tablets
* Clean NLS and Override warnings
* Fix parse size data with dots
* Add listeners after set the values to avoid raising triggers
* Increase performance of adapters.
    Notify the data changed at the end of the changes, and only to super
    adapters (the internal structure has already been updated)
* Ensure that all the Cursor references were closed after used them.
* Remove unused SuppressLint
* Clean up

Change-Id: I4326e97cbc942c767829f1a0ff6b380ad768cfef
Signed-off-by: jruesga <jorge@ruesga.com>