Add function readlines to read the whole text file

The result is a 2D array of character, not a string so some intrinsic
function on string just won't work. A workaround is define a new
allocate string then copy the whole line into that variable.

    character(len=:), allocatable :: line
    line = repeat(' ', 128)
    do i = 1, 46
       do j = 1, len(line)
          line(j:j) = X(i,j)
       end do
    end do

See test case for more details.