whitespace fixes
move _ProgramComponent class to a more logical location