add distinctBy method and implement distinct in terms of distinctBy

add distinctBy method to Seq (move it from scala-reflect) and implement distinct in terms of distinctBy

review by @Ichoran 
I've tried to follow the pattern, looks like lots of junit tests in `collection` package have a few tests only. So i thought you create a test for a collection and other tests for same collection (if any) will go there later.
But i'm okay with changing it, do you like `DistinctTest` better?