run_handler.py is now executable

"+x" flag was missing
Added the immediate_rebind flag to ``@Requires``

Fixes #25
Avoids a component to be invalidated then revalidated if a service can immediately replace one that is being unbound.
The component is notified with the @Unbind* and @Bind* methods, like if it was losing an optional dependency.
If no service can be injected immediately, the component is however invalidated.

Example:
C depends on a service S provided by A and B, and A is initially injected in C.
When A is invalidated, B can now be immediately injected in C, without invalidating C.

C must have the following decoration:

  @Requires('field', S, immediate_rebind=True)
Added setup.cfg file, to package iPOPO with Wheel
Sort bundles by ID in get_bundles()

This avoids a random order print when using command 'bl' in Jython.
Updated .gitignore
Added a Maven POM file to describe the project

The resulting JAR can be directly imported by Python (zipimport).
It can also be imported in Jython, and can be handled with JIP as any Maven artefact.

This could be a lead to handle local dependencies using an OSGi-like manifest
Added a requirements.txt file

References the project folder and jsonrpclib-pelix
Corrected environment variable comparison test
Added a bean module in pelix.shell

Defines the classes used by the Pelix shell v2 and its consumers:
- IOHandler: the I/O handler, like in Pelix shell v1
- ShellSession: Stores session variables
Pelix shell core, console and remote use the new beans

Added set and unset methods
Added support for $var and ${var} in command line arguments (see string.Template)
Removed Eclipse project files from repo
delete_framework() can be called with None or without argument

This will simplify the cleanup process as only one framework can run at a time
Tests now use FrameworkFactory.delete_framework()

This avoids "Framework already exists" exception after a test has failed
Add missing methods to ShellSession: flush and write
Use a default session if none is given in Shell.execute()
Corrected shell tests to use the new API
Corrected dict generation for Python 2.6 compatibility
Added thread safety in IOHandler.write
Unknown variables are replaced by an empty string in shell command arguments
Added the $result special variable, with the result of the last command with result

Exemple:
$ install pelix.shell.remote
$ echo $result
10
$ start $result