Fixed: BufferedFile readline() does not check for newline characters if buffer size is met or exceeded

Changed BufferedFile readline() to check for newlines if the buffer size is met or exceeded. Previously, readline() would return the truncated line without checking for newline characters in this case.

Added an additional line to the readline() test in test_file.py. readline(39) should read "Fourth line.\nFinal line non-terminated." and find the newline character, returning only "Fourth line.".