rewrote most of the applications backend, complete change in application structure
Rocket-Launcher now consists of two parts: the binary which the user executes
(which talks to D-Bus if another instance of it is running) and a shared library,
which handles most of the backend.

Some functions which were performed by GTK before (like finding the correct path
for an icon) have outsourced to the shared library.
This will make it easier to port Rocket-Launcher to another gui toolkit.

As a consequence of splitting Rocket-Launcher in two parts the separation
of backend and frontend has been enhanced.

Rocket-Launcher now support incremental builds and multithreaded builds.
To do this Rocket-Launcher uses recursive make
(I know, I know, but the depth is only one level)

NOTE: git reports some files have moved with this commit. This is
(with the exception of one case) not the case. They are different files!