add specs for Assignment#uniform_batch_edit
Add redirect to Assignments#batch_edit from Shifts#route_batch_edit (instead of rendering assignments/batc_edit view directly)
Add controller action for Assignments#batch_edit_uniform (abstract batch update logic from standard batch_update into do_batch_update, share with batch_update_uniform)
Add specs for uniform batch assign from grid view
Begin to add conflict detectoin for batch shift assignment
refactor batch assignment udpate logic in the controller
Add new batch update logic in views
Clean up batch update logic to pass old specs
Debug batch assignment obstacle detection and reassignment logic
placeholder
Add error-catching for delegating emergency shift, fix bug in #batch_uniform_edit, Add automatic shift urgerncy updating, Refactor RiderShifts helper
Refactor Assignment.send_emails and Gridcontroller.send_emails
Start bug fix: old asignments not retained during obstacle/error catching recursion
Continue bug fix of batch assignment logic