basic functional class
add lua function registe
almost finish
almost there
done