Add buffer iterator
Use dynamic buffers instead of static char buffers