fun readFromReader(reader: Reader): JsonValueReads a JSON value from the given reader.
Characters are read in chunks and buffered internally, therefore wrapping an existing reader in
an additional BufferedReader does not improve reading
performance.
reader - the reader to read the JSON value from
IOException - if an I/O error occurs in the reader
ParseException - if the input is not valid JSON
Return
the JSON value that has been read