An extended JSON library for Dart that supports the encoding and decoding of arbitrary objects