Update the `diagrams` tool to support `provides/3` module properties when using SWI-Prolog or YAP as the backend compilers