Please share your experience with the MCP23016 16-bit I2C IO Device with me.

Don't use the MCP23016. It requires an external timing capacitor & resistor, and I have experienced compatibility problems with an ESP8266. As suggested, use the MCP23017 instead and note the different pinout.