This is a simple, barebones Python library for EIP712 encoding and signing, which can also handle arrays of user-defined EIP712 types. Most of this code was ported from the ethers Javscript project.