Fix for ModelResource when it contains more than one m2m field pointing at the same sub-Resource

Fixes issue #898 
When a ModelResource has multiple m2m's pointing at the same sub-Resource, a PUT or POST re-using the same sub-ModelResource across m2ms would result in only one m2m successfully creating the relationship.

 - Added an optional uniqueness to the ModelResource.create_identifier()
 via a field_name argument

 - update the ModelResource.save_related() and ModelResource.save_m2m()
 to make use of the optional field