This splits the Ethereum contract into a generic Wormhole and a purpose-specific token transfer module that uses the main contract for verification. This acts as a draft for this structure. Change-Id: I59e133dd7558d5e046045e464e4740241c696d5f