Added comments for Haskell data types
extended VersionFilter data type definition:
implemented basic version numbering with version trees and artifact trees