improved reading files by using memory-mapping

 * file must be in primary memory for scintilla
 * we cannot write to scintilla's buffer memory directly
 * so mapping the file is best: in the best case it is not copied to primary memory and resides in kernel cache
 * in any case, mapping to memory is faster than read()ing into primary memory
 * copying from mapped virtual memory to scintilla buffer (via SCI_APPENDTEXT) is faster
   than copying from primary memory