implement buffer for read and write

Now ecb_crypt() operates on memory buffer, ecb_crypt_file() does reads
data from source file to buffer, calls ecb_crypt(), then writes to
output file.

This gives some speedup. Benchmark with 80MiB file:
Before:
real    0m5.332s
user    0m5.133s
sys     0m0.184s

After:
real    0m4.248s
user    0m3.998s
sys     0m0.170s