TRUNK-3850: Refactored program validator

Changed program validator to use ProgramWorkflowService.getProgramByName instead.

Added unit test for WorkflowCollectionEditor, this helped detect error with ProgramWorkflowService.saveProgram_shouldCreateProgramWorkflows()

Added unit test for edited programs
Modified unit test for WorkflowCollectionEditor.java to check workflows in programs
Added lincense header and javadoc to WorkflowCollectionEditorTest.java
Merge pull request #1037 from geoff-wasilwa/TRUNK-3850

TRUNK-3850: Refactored program validator