Another project can add babl as a meson subproject
Made some changes so other meson projects can use babl as a meson subproject.
When a subproject you can't use the meson.source_root function because it will give you back the path of the main project so I made all of those that were using it global variables.
You can't also use meson.add_dist_script so there is a check there.
Created a dependency that is used by the parent project.
Made the extensions explicitly build as shared libraries, if the parent project decides to build babl as a static library.