Annoyingly similar but cleaner version of PAL's FinishedInfo.
The toJson functions are only to preserve the old js interface.