alien.libraries.finder: automatically find library files based on library names

To make it easier to support cross-platform library bindings use the
find-library word. Factor is then supposed to automatically locate the
correct library file depending on the users' platform. Then you dont
have to specify the full so-name on unixes which breaks if the user
has a newer library version. The same library lookups that
ctypes.find_library uses will be implemented in future commits.
alien.libraries.finder: linux code path for find-library

/sbin/ldconfig -p is used to figure out what the correct lib name
is. It is the same method as used in python ctypes.
alien.libraries.finder: better library resolving
alien.libraries.finder: remove unused import
alien.libraries.finder: split into sub-vocabularies and implement macosx better.
bson.reader: Allow reading a sequence of bson objects from a file.
build-support: Install screen and tmux with apt-get/pacman.
I want this to work out of the box on a new build farm machine.
build-support: Install libssl on ubuntu.
io.sockets.secure.openssl: libssl error is opaque, check that cert files
exist in Factor beforehand so we can get a nicer error message.
Add missing USE: and neaten up the list.
alien.libraries.finder.linux: dont use dlopen.
alien.libraries.finder.windows: more like MSDN search order.
io.sockets.secure.windows: add platforms.txt.
machine-learning: use bisect-left (new name for search-sorted).
alien.libraries.finder.macosx: fix tests.
alien.libraries.finder.linux: fix using.
alien.libraries.finder.linux: use third element which is file name.
dns: Add with-dns-servers to allow custom DNS lookups.
tools.dns: Add dns-host word to look up DNS from a specific server.
tools.dns: Fix using.
tools.dns.public: Add some public DNS server ips and helper words.
alien.libraries.finder: adding platforms.txt.