The existing IAVL code is very poorly structured, getting more files out of the root directory will only help
We should move encoding and encoding_test to a single encoding folder. We would have to make every function in encoding.go exported which is fine.
This has no external API breaks, as all these functions are internal only.