#2409: Added IProgrammableItem interface, implemented the interface in ProgrammableOperator, Script, and the *ProgrammableProblems