Implemented the packaging of the plugin and cleaned a little.

Now the plugin/product is ready to be distributed through an Eclipse Update Site. For that I created both:

- an Update Site project: to deliver the product
- a Feature project: to put it in the update site (can't put plugins directly)

Proper documentation has been added, especially as building the site has some quirks (with the basic tool one can't choose the export folder for instance).

Note that the export of the site embeds an instance of the Node.js program.

Grunt has also been added (along with npm package definition to do things well) in order to create a cleaning task, especially for the update site which gets generated locally.

I also added the main project (Plugin project) files to version control, since it's in fact part of the project configuration and not a user preference. And honestly most people will use Eclipse to work on this project, since PDE (Plugin Development Environment) is easier to use through it.

Finally, documentation has been updated, and things cleaned a little.

Here are some other technical changes:

- the Backend class has been refactored a lot, and a dedicated ProcessRunner class has been introduced (more powerful than the standard one).
- added a grunt task to configure automatically the port used by the backend to match the one used in the plugin
- changed this port arbitrary to 50000

Implements most of #1 (except maybe a proper interaction with the backend regarding its initialization - like for the port number), and all of #16.

fixes #16
closes #20
WIP Documentation on highlithing
WIP Gigantic refactoring...