Added few methods to CollectionExtensions
Clean up and refactoring in collection extensions and tests