local ident = minetest.get_current_modname()
local path = minetest.get_modpath(ident)

local lib = {}
_G[ident] = lib

local function
component(name)
	local p = string.format('%s/%s.lua', path, name)
	print('[vtlib] loading component ' .. p)
	local chunk, err = loadfile(p)
	if chunk == nil then error(err) end
	lib[name] = chunk(lib, ident, path)
end

component 'dbg'

-- primitive manip
component 'tbl'
component 'class'
component 'math'
component 'str'

-- reading and writing data formats
component 'marshal'

-- classes
component 'color'
component 'image'
component 'ui'
component 'tree'

-- organization
component 'registry'

-- game object manip
component 'item'
component 'node'
component 'obj'
