As discussed with @Superzerocool today, prepare the Web2Cit-Server's JSON response for consumption from the Web2Cit-Monitor.
Currently, the API (when asked for a JSON response) sometimes returns an array (of path results), an object (with an error property), or just plain text. Make it always return an object with the following properties:
- info, including the API version (T313722) and the revid of the configuration files used
- data, with the array of path results formerly returned as root object (maybe inside a results or paths sub-property, to leave room for average score; T313758).
- optional error, including an error object with nameand message properties, just like we do already for path-specific errors.
In the array of path results, make sure that for each field we always return the output, test and score properties, even if they are undefined. Convert undefined output response to an empty array.