Going back to the drawing board for the Lua-side API design. *sigh...*