add DeviceChanged signal to MCP and make surface lock mutable for use in const methods.