Added the Crosswalk Extensions Runtime header

Needed to access the runtime variables passed by Crosswalk.
Load the python module based on the plugin name

pycrosswalk will look for a python module with the same as the plugin
(without the lib prefix and the .so extension on Linux) and at the same
directory as the plugin. PYXWALK_PATH is not needed anymore.

For instance, let's suppose the symbolic link bellow:

  /home/foo/libfoobar.so -> /usr/lib/pyxwalk/libpycrosswalk.so

The loader will try to load the following module:

  /home/foo/foobar.py

For the following command line:

  ./xwalk --external-extensions-path=/home/foo/
Expose the instance_[created/destroyed] callback to python
Support multiple python extensions

We trick Crosswalk to load multiple extensions using symbolic links, but
the reality is the extension only gets loaded once. The dynamic loader is smart
enough to figure that out.

So all the globals we have on the pycrosswalk plugin are shared. This is
fine, but we need to make sure that the next python extension being
loaded does not overwrite the callbacks set for the current extension.

The only tricky part was with the "instance_created/destroyed" callback,
which needed to be implemented using a closure library for C
(libffcall). I gave it for granted that closures were not possible in C,
but apparently it is using some stack manipulation magic.
Load extension from PYXWALK_MODULE when defined

Useful for debugging.
fix Python.h include order

Python.h must be included before system headers to avoid preprocessor
warnings (see https://docs.python.org/2/extending/extending.html).

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
support Python 2.7

Module initialization was done differently in Python 2.x.

The code should also work with different Python versions. What ties it
to 2.7 at the moment is only the dlopen(RTLD_GLOBAL) hack that is also
tying it to 3.3 instead of some arbitrary 3.x version.

The latest available Python developer files are picked by configure.
This can be overriden by passing "-D python_version=2.7/3.3".

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>