included ICollection into inheritance chain,
added Clear and CopyTo implementations
optimized performance, fixed a couple of bugs