Add three missing first-line-of-file comments
Android.mk: sort files to be compiled
Rewrite the glue between C++ and C code

I was not sure whether the static_cast<ChildClass *>(parent)
strategy was OK memory-wise.

Well, it turns out it was not OK. Sure, the new pointer was for
an instance of ChildClass, but the program was reading from space
that was not allocated (according to Valgrind).

Therefore, change strategy: use the constructors as they are
typically used in C++, live with exceptions (in any case,
Alessandro confirmed that we compile libneubot with exceptions
under Android), use try...catch as appropriate.
Makefile.in: remove redundant install -d statement
Makefile.in: improve the way in which we uninstall

1) Do not remove system directories.

2) Simplify and remove DATADIR/libneubot.
libneubot: don't use neubot_warn() inappropriately
Use NEUBOT_SOCKET_INVALID in place of -1
Teach Pollable::detach() to destroy half-constructed objects
Clarify that pollable.hh is not installed
Prefer abort() to return-error for unexpected situations
utils.c: remove unused #ifndef..#define..#endif chain
Add some comments and TODOs
utils.c: abort() if gettimeofday() fails
Update echo.c implementation

1) Always use evutil_socket_t for sockets.

2) Simplify Connection_close() implementation.

3) Prefer evutil_closesocket() to close().

4) Deploy more robust checks (e.g., < 0 rather than == -1).

5) Avoid (just in case) free(NULL).

6) Remove stale comment: now the third argument is no
   longer `handle_close' but `handle_error', therefore,
   the risk of double free is reduced.
gen_header: define a valueless NEUBOT_H

Because, otherwise, NEUBOT_H may confuse SWIG, which in
certain cases generates getters/setters for it.
Remove unused neubot_slot_vos
gen_header: merge slots and hook expansion
gen_header: do not add extra spaces at EOL
gen_python: use _ctypes.Py_{INC,DEC}REF
gen_python: simplify hook and slots, remove unneeded glue

This basically removes the wrapper function calls that used
to raise an exception on error.

Because we use a C/C++ event loop, it is not pratical to
raise exceptions when we use libneubot, because in the
worst case they are catched by ctypes and not propagated
eventually to unwind the whole stack.

Update the regression tests accordingly.