Now close the file when it's not read.And new AbstractLogData::getLines() function to speed up getting multiple lines.
Implement asynchronous loading and indexing in a worker thread. Also add a more comprehensive unit test suite for LogData.