Use separate datafile.lua file, handle custom-settings in Lua

Fixes #98