Struct!
BTree is now a struct rather than a class
- This has a weird implication that
find()
is a mutating func, but might be able to work on that in the future - Cleaned up consistency throughout BTree
- Cleaned up storage of root in a new storage
- Removed parent property of BTreeNode, replaced with isRoot
- Removed the ability to store duplicate keys
- Properly
save()
nodes when they are modified - Completely rewrote
split(at:)
, hopefully is much more understandable and swifty now