Option to disable all components but libfm-extra library for configure.

The commit adds option --with-extra-only which disables everything
but libfm-extra.* from build and install.
Commit from LXDE Pootle server by user smarquespt.: 307 of 352 strings translated (11 fuzzy).
Commit from LXDE Pootle server by user smarquespt.: 325 of 352 strings translated (1 fuzzy).
Commit from LXDE Pootle server by user psokol.: 269 of 352 strings translated (22 fuzzy).
Commit from LXDE Pootle server by user alium.: 352 of 352 strings translated (0 fuzzy).
Install header files too when biult with --with-extra-only.
Commit from LXDE Pootle server by user gymka.: 351 of 351 strings translated (0 fuzzy).
Commit from LXDE Pootle server by user gymka.: 351 of 351 strings translated (0 fuzzy).
Move libfmactions stuff into separate module, leave nothing in libfm.

It will cease to work at this point though, just because plugin support
in FmFolderView and FmFileMenu isn't implemented yet. Will work after
that implementation.
Module should have module_name[] instead of *module_name.

That is not only extra pointer but also a potential problem. Fix is small.
Use direct comparing instead of strcmp for "inode/directory"

We can just compare FmMimeType with _fm_mime_type_get_inode_directory()
instead of extracting name and doing strcmp() on it. It is much better.
Context menu extensions based on URI scheme.

This re-enables actions, this time from a module.

Note that the change adds a suggestion to call fm_folder_view_add_popup()
each time folder model is changed in the view.
We should not keep parent window referenced in FmFileMenu data.

It is already kept in parent object so we should just access it instead.
Move support for trash:// items in file menu into separated module.
Correct logic of archiver integration in file context menu.

1) If some files are virtual and some native it opened archiver. Incorrect.
Should open only if all are native.
2) In case when we select fileA.zip and fileB.tar.xz it still added 'Compress'.
Incorrect. Should add 'Extract' in such case.
New API fm_file_info_is_writable_directory() and test for R/O file systems.

The API does check for attribute which is set by FmDirListJob or FmFileInfoJob.
Use fm_file_info_is_writable_directory() to update context menus on file or folder.

R/O filesystem should disable Cut Paste Delete Rename and ExtractHere operations.
Disable Copy operation on trash:// file system.
Correct indentations in src/gtk/fm-file-menu.c
Remove items from trash:// folder context menu: Paste, Rename, CreateNew