This is a very basic example for how to use hashes to "store" complex objects as hashes.
This is the future. Sure, it kind of breaks composability but not completely. Anyway I am using this for Arbiter Protocol which is moving to v2 right now and I need to learn how to do it, so this repo is my learning experience.
Also we can do stuff like slices on calldata arrays (which we can't do for other array types in solidity at the moment) so this actually unlocks some cool stuff if you use it and rely on slicing of arrays.
Arby