Add support for _tostring() for records

Allows custom definition of tostring() operation on record instances.
Add support for error-related fields in core.gi

Allos querying error domain for enums which are error codes and
looking up error enum by error domain quark.
Redo of binding for error handling

Add overrides for nicer working with GLib.Error.  When C function
throws, return error as GLib.Error instance, not just error message
and error code.  Add similar support for Lua callbacks; expect that
callbacks throw GLib.Error instances, but leave legacy support for
just messages.
Adjust testsuite to changes in error handling
When printing type tables, print type name

... instead of standard Lua boring 'table: 0xjunk'