The rope data structure as described in http://en.wikipedia.org/wiki/Rope_(data_structure)