Initial build of Nix Port based on Efl.

This adds the Nix Port infrastructure that builds
only WebCore, JSC and WebKit2. API, API Tests,
WebKitTestRunner and so on were left out for now.

WebKit1 is not supported.

This port is still strongly based on EFL and
has tons of cpp and headers files copied. A few
stubs were already added to WebCore/platform/nix
and to WebKit2/API/C/nix, but this was only the necessary
initial work to get it building as a new library.
Bootstrap the Nix WebView and MiniBrowser

The MiniBrowser was developed using GLX and Xlib, and works for
typical Linux desktops. It can load pages, accept very narrow
set of keyboard keys and simple mouse clicks.
Making WebCore/platform/nix almost efl free.

Reviewed by: Caio Marcelo de Oliveira Filho
Use glib instead of ecore where we can

In many cases we can use Gtk files exactly as they are because they
rely only on glib. If this port reaches the public, we should see if
we can separate the glib-only bits from gtk, so we can share them more
safely.

Reviewed by: Jesus Sanchez-Palencia
Having a Efl free NixKeyboardUtilities

We had to get rid of the last Efl NativeEvent from WebKit2,
NativeWebWheelEventEfl, and add our own WebPage stub implementation.

Reviewed by: Caio Marcelo de Oliveira Filho
Cleaning up WebCore/platform/graphics

All we need for now is a stub implementation of Icon.h
and our implementation of Image.h. Everything else was
left out of our build until we figure it out what else is needed.

Reviewed by: Caio Marcelo de Oliveira Filho
Make our MiniBrowser use Glib mainloop

To handle X events, we now use glib's GSource mechanism from Xlib to
watch the file descriptor given by XConnectionNumber. We were getting
this plumbing from ecore-x before.

If other Tools/ need this kind of plumbing, we can put in a shared
placed.

Reviewed by: Jesus Sanchez-Palencia
Continuing the WebCore cleanup

Removed the unused EflScreenUtilities, added
our own stub for PlatformVideoWindowNix and our own CSS
for media controls, based on the efl ones.

Reviewed by: Caio Marcelo de Oliveira Filho
Correctly handle the window close in Nix MiniBrowser

Reviewed by: Jesus Sanchez-Palencia
Cleaning up Widget.h

We now have our own WidgetNix implementation, efl free.
A stub WebPageProxy was added, including our current user agent.

Reviewed by: Caio Marcelo de Oliveira Filho
Use glib to implement WebContext functions

This was we get rid of efreet dependency. As consequence we also move
to use Gtk (glib) versions of FileSystem and SharedBuffer. We should
reconsider in the future whether glib is the best option or we could
use the Posix version of files.

Reviewed by: Hugo Parente Lima
Remove ewk_main.h

This is not need anymore, since we don't use ewk_init anymore. Use the opportunity to
fix the CMake variable name for our API, which is WebKitNix and not EWebKit2.

Reviewed by: Rafael Brandao
Implement the minimal RenderThemeNix without using Evas

This also removes the EFL deps from WebCore.

Reviewed by: Jesus Sanchez-Palencia, Rafael Brandão
Use only PLATFORM(NIX)

To aid the bootstrapping, Nix were also defining PLATFORM(EFL). This is not
needed anymore. This patch removes the extra definition and fixes the build.

Reviewed by: Jesus Sanchez-Palencia, Rafael Brandão
Remove EFL dependencies from Nix cmake files

The remaining efl/ files that we use do not use EFL libraries, either rely on
POSIX or are simply stubs.

Reviewed by: Jesus Sanchez-Palencia, Rafael Brandão
Remove EFL dependencies from Options cmake file and jhbuild

libgpg-error/libgcrypt were needed by eet, removing them as well.

Reviewed by: Jesus Sanchez-Palencia, Rafael Brandão
Create Nix::MouseEvent and use it for mouse press/release/move events.

Introducing Nix::InputEvent and Nix::MouseEvent to deal with mouse events.

Reviewed by: Caio Marcelo de Oliveira Filho, Hugo Parente Lima
Cleaning up UIProcess' Efl stubs

Adding our own stubs with what was needed for now.
Also, there is no need to use WebCore/platform/efl
as an include dir for WebKit2 anymore, so PlatformNix.cmake
was fixed on the way.

Reviewed By: Caio Marcelo de Oliveira Filho
Fix debug build.

Fix debug build by adding platform/gtk/LoggingGtk.cpp to the build.

This file doesn't use gtk stuff, just pure glib.

Reviewed by: Jesus Sanchez-Palencia
Continue the cleanup of WebKit2

A few include dirs and cpp files were removed from our build system
since they were not needed or used. New stubs were added to WebCoreSupport
and Downloads.

Reviewed by: Hugo Parente Lima