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
TRUNK-4240: Create a drop-down list handler for Location Attribute types
Merge pull request #1137 from pmuchowski/TRUNK-4240

TRUNK-4240: Create a drop-down list handler for Location Attribute types
Doing some file formatting
Fix failing tests in EncounterServiceTest - TRUNK-4545
TRUNK-4492 - Removed column "Tribe" from demo-data.
TRUNK-3840: Refactoring code to display retired set member

Refactored concept.jsp; removed repeated code.
Add code to ConceptSet.java to factor in retired concepts while sorting
Added unit test for new behavior

Updated concept.jsp view and ConceptFormController

Factored in null weights

Changed ConceptSet compateTo method to use OpenmrsUtil's compateWithNullAsLowest
Follow up - TRUNK-3840
Fix for coded concept broken with Most Recent Observation on dashboard TRUNK-4131

Follow up to clean unit tests - TRUNK-4131
TRUNK-4529: Prevent voiding a Person linked to Provider(s) and/or User(s) metadata