update .gitignore to include config.(sub,guess) and install-sh

Supplements commit ac613f66b44, which removes the mentioned files from
the git management.
update .gitignore
config.h: add #define EXPORTED and HIDDEN

With gcc >= 4.0 symbols can be marked as hidden, so that they are not
included in the dynamic symbol table of exported symbols.

With the additions to configure.ac , a library compiled with CFLAGS =
$(CFLAG_VISIBILTY) will have by default all symbols hidden, and each can
be "shown" by prefixing it with the EXPORTE macro.  On the other side, in
the rest of the libraries are all symbols are by default exported, so each
symbol can be prefixed there with HIDDEN in order to exclude just that
symbol from the dynamic table.
libcyrus_sieve: hide all internal symbols

... that are not needed by the library clients.
imap/libcyrus_imap: hide symbol search_prefilter_messages()

as the function is used only within libcyrus_imap, it does not need to
be exported.
fixup: libcyrus_sieve: hide all internal symbols
mark local variable as static

Mark global variables, that are used just within one file, as static.
imap/libcyrus_imap: mark some internal variables as static

Mark variables, that are used only within a single file, as static.
lib/libcyrus_min: hide function beautify_code

... as the function is used only within lib/util.c
imap/libcyrus_imap: make even more variables static and hidden

... as they are used only within a single source file.
sieve/comparator.c: export function lookup_comp

... so that cunit can test it.  Otherwise cunit cannot even link
correctly, as the requested symbol lookup_comp is not found.
perl/sieve/lib/libisieve: hide internal symbols

-- mark isieve.c: do_referral as static, as it is used only within this
   file
-- comment showlist() and getscript() out in request.c, as they are
   nowhere used
hide explicitly even more internal symbols

-- comment out function netnews/remotepurge.c:print_stats() as it is unused.
-- hide symbols by making them "static", if they are used only within the
   same file.
-- show explicitly some symbols, if they are needed by other files.  Good
   when eventually everything is compiled with -fvisibility=hidden .
Makefile.am: don't link explicitly with libcyrus(_min)

... when linking with imap/libcyrus_imap.la . libcyrus_imap links already
implicitly with lib/libcyrus_min.la and lib/libcyrus.la, so that it is not
necessary to link explicitly with lib/libcyrus(_min).la .
.gitignore: remove sieve/Makefile
Makefile.am: delete perl/*/Makefile.PL on "make distclean"

... and delete perl/sieve/script/(installsieve,sieveshell)
Makefile.am: move lib/mappedfile from libcyrus_min to libcyrus

The functions from lib/mappedfile.c are not used by the master process
and functions not used by the master process do not belong in libcyrus_min.
lib/mappedfile.c: mark all functions as HIDDEN

The functions from lib/mappedfile.c are used only from
lib/cyrusdb_twoskip.c, which means only within lib/libcyrus . As such
they can be marked as hidden and not exported from the library.
libcyrus_min: mark explicitly as EXPORTED all relevant symbols

Mark all symbols in lib/libcyrus_min, that are used by programes or other
libraries as EXPORTED, except the symbols, that are used only by cunit.
lib/strhash.[ch]: remove unnecessary #include-s