Add BuildMetadataCollection + Tests, Fixes equality comparison