Multiple Refactorings. See details...

1. Comparator removed from Gradient Class, so now Comparator
does not pass around through network (which will cause self
problem).

2. Created super class PeerComparator for all Comparators 
that we are using. self peer descriptor is now a protected
attribute of super class that is accessible from subclasses.

TODO: Change comparators evaluation schema according to TMAN
line ranking function.