[lua-template-wrapper] Initial implementation for plain functions

I did not try to compile it yet, nor test it altogether.
[lua-template-wrapper] Fixed according to milesonte 6.
[lua-template-wrapper] Adding function list wrap support
[lua] Added argument arity check to template wrapper
Adding cmake commands to generate metadata.
Don't try to add wrappers if introspector is not found.
Fix checking if the introspector was found.
Implement ouroboros_create_wrappers.
Merge remote-tracking branch 'remotes/origin/lua_template_wrapper' into opwig2
Merge branch 'clang-introspector' into opwig2
Remove the parser code.
Split opwig code from libouroboros into opwig-common.
Using subdirectories.
Moving code around.
Also, split language modules into opa-LANG and opwig-LANG.
Fix tests compilation.
Add libjson to externals.
Merge branch 'dev' into opwig2
Update minimum CMake version.
Fix libouroboros-python
Fix missing include.