Patch IRI.create(String,String) to match IRI.create(String)

IRI.create(String,String) has a different behaviour to IRI.create(String). This results in myIri.equals(iri) failing when it should succeed if the prefix used in IRI.create(String,String) was not consistent with the algorithm used by IRI.create(String)

Given that the prefix used for IRI.create(String,String) may be user defined and sourced directly from the document by a parser, it is easiest overall to patch it so that it always has the same behaviour overall.

There are new tests to ensure the new behaviour works as designed.