added the start of a scripting framework