Hi,
I'm about to start experimenting with this library, but I saw that the Contract class is "blocked" from being extended properly.
My proposal would be to change the constructor https://github.com/BitGo/eth-contracts/blob/master/src/contract/index.ts#L77 to be proper, and have other alternatives to read from the file system.
Even just an overload would be sufficient.
My use case is that I might want to use that class for a built-in protocol (Compound for example) but also to use a custom one that would make no sense to integrate into this library as a PR.
Best,
JC