SERVER-15535 replication logic fixes for replsets_priority1.js

During parsing of a replSetUpdatePosition command, a node should not allow any updates
to move a particular node's optime back in time. Previously, we were allowing updates to
go back in time if they were updates for the node itself -- this breaks if you hear a stale
update via remote nodes for yourself.  Updates to our own lastOpApplied are allowed to go back
in time if the update's source is from ourselves.

Also, during spanning tree formation, we should only connect to nodes that are strictly
ahead of us, even if they are in state PRIMARY.  This is because node state is transient
and our knowledge of it may be out-of-date.

These two behavior changes should fix replsets_priority1.js for new replset impl.
SERVER-15535 comment edit
SERVER-15535 enhance freshness checker to consider priorities as well.
SERVER-12061 optionally abort cloner when corruption detected from source