Create library scriptzeug
Implement backend scheme for scriptzeug
- Backends are optional and only activated, when the specific external library has been found
- Backends can be deactivated by a cmake option
- Includes and references to external libraries are only used in backends, to ensure that project using scriptzeug do not even need the include files of those libraries
- Add backend for JavaScript using the V8 engine
Experiment with variadic templates
Implement template based registration of functions on an object
Experiment with passing variant parameters from script for a typed function call
Implement registration of functions/methods in Scriptable and calling them from javascript
- Replace Cascade template by a simpler version that calls the function directly
- Deal with error conditions when wrong types or wrong number of arguments is used for calling a function (use default values in that case)
Add more sophisticated Value class that is able to convert between data types and also store composite data types likes arrays and objects
Make function calls robust with respect to the number of arguments given
JavaScript backend: Add some missing data types
Add support for dynamic types in functions (use Value as argument type)
Make function calls from scripts independent from the used calling convention (RTL or LTR) by more template magic
Add support for dynamic argument lists
Remove unused type from Value
Add support for passing arrays and objects from script to C++ functions
Merge branch 'scriptzeug' of https://github.com/hpicgs/libzeug into scriptzeug

Conflicts:
	examples/script/main.cpp
Add support for return values to evaluate() (not for calling C++ functions, yet)
Add support for return values when calling C++ functions from scripts
Merge remote-tracking branch 'origin/master' into scriptzeug
Add support for accessing properties via scripting (WIP)