Sanchez/fix duplicate assessments

Adds in the initial client side JS fix to avoid duplicate calls to get peer submissions, but also secures the client side code to avoid retrieving duplicate peer workflow items when an assessment has been made against the associated submission.

This does mean that, if a duplicate does get created, a soft lock will be created on the associated submission until the duplicate has expired. With client side changes this should be much less frequent. 

@wedaly @gradyward 
It might be more efficient to use `exists()` instead of `filter()`