Try making the lua framework a bit more generific