To implement check action for KP, counterCache is going to be used. This commit updates 2 models, Outcome and Synopsis to support counterCache.

Also:
1. Update so that only resource person can update both model.
2. bug fix for outcome controller since course does not contain program_id anymore (To call for related PO).
3. Add and edit view is also modified to cater for changes in database.
Implement counterCache for Instruction and Content.
Also bug fix for add and view for both model.
Implement counterCache for Assessment.

Bug fix for add and edit for model Assessment
Implement counterCache for Reference and TextBook model.

Also updates bugs in add and edit of both models.
Fix link in course view so that edit/add/back button will now work with the new HABTM table between programs and course.
Merge branch 'feature/CounterCache_for_all_models' into develop
Transfer coding for check to UHEKVerifyPogram branch