Added support for Lua 5.2

Should still work against Lua 5.1 as well.
Micro-optimizations for pushing strings to Lua

Use lua_pushliteral and lua_pushlstring instead of lua_pushstring, which
avoids Lua having to determine the length of the string.
Replaced 'unsigned int' with 'unsigned'

Same thing, but shorter.
Replaced EventListener with signals based on libsigc++

This replaces the rather hard to understand event dispatcher with a
probably even harder to understand templated library, but fortunately
we can rely on the available documentation.

Hopefully it will also help with the readability of our code and with
adding additional signals to other classes.

Added libsigc++ to README and Travis CI configuration.

Reviewed-by: Erik Schilling
Removed unused functor obj_name_is