Based on ethers.js's queryFilter, allows querying of past contract events, by querying the logs for a contract's event topic. * queryFilter to query past logs * Allow querying of past block log events * Can query by block number or block hash