XD-466 Add Json support to Tuple

This enhances DefaultTuple.toString() to use a Converter<Tuple,String> .  TupleBuilder currently injects a JSON converter. TupleBuilder now provides static Tuple fromString(String) which uses the reverse converter.  There is also a TupleStringMarshaller class which contains to and from converters and a subclass that implements JSON.  This is currently not used except in unit tests. It's basically a holder for the Converters that are used. Currently there are no classes that require two way conversion.