https://andrew.gibiansky.com/blog/haskell/finger-trees/ www.staff.city.ac.uk/~ross/papers/FingerTree.html