Add the necessary machinery to generate the introspection data from eom

Annotations are still missing, but this provides enough for basic introspection usage

Based on eog commit b316c9e0b30a8c6d67feb8f21a20268e18c8cc3d
From Claudio Saavedra <csaavedra@igalia.com>