Until recently, SIEGE Util (sources and headers in siege/util/*) have depended on SIEGE core to initialize them – not anymore – now they work perfectly fine without the core. This marks an important first step in getting SIEGE into a less monolithic state, so that (say) its pathfinding code can be used as a separate library.
There are a few cases where util depends on, say, modules (which currently depend on core) – for example, conv.c which requires an iconv module – but I have plans on fixing this and getting modules independent as well.
Here is the relevant commit: https://github.com/SIEGE/siege/commit/bd8d77a1651099eac809c0aae58623fa1fa10144.
UPDATE: SIEGE-Modules do not depend on core for initialization anymore. Commit: https://github.com/SIEGE/siege/commit/03c578bf8bc04f83c6d3c945a770874fd00af642