GapBuffer data structure in Rust.