Peter Jacobs

Results 2 issues of Peter Jacobs

See also #11. We may not need both this PR and #11, but with the lack of normal slicing behavior the usual `DoubleEndedIterator` approach to reverse iterators doesn't quite work....

This makes `Items` also implement `DoubleEndedIterator`, allowing traversal backwards from the end of the buffer. Specifically, `gapbuffer.iter().rev()` should now work as expected.