Multiple changes to Validation; moved to its own file