Previously, generated `Call` enum had no documentation, and
documentation on interface items was only kept in generated solidity
interfaces.
Now all documentation will be moved from impl items to generated `Call`
enum
Previously, all items from evm-coder codegen was sorted lexically, which
caused some problems, where lexically sorted names of contract were not
in the same order as contract inherit chain
Now they are sorted by insertion order, and macro-generated code now
inserts them in order of definition, thus providing topological sort of
output contract items
We have plans to allow evm-coder to generate Callables for externally defined contracts, however our current attribute parsing was limiting code maintanability, rework was needed before starting to implement new features
BREAKING CHANGE: solidity_interface definitions may now look slightly different, for example interface names now should be identifiers, not strings