How tough are the definiy pbx's to program? What kind of programming interface is needed?