Switching Textures on an Object in-game

Does anyone know how to set-up an object like a cube or a plane so that it’s texture can be switched or toggled using a keyboard or joystick sensor?

Specifically, I’d like to be able to trigger different bitmap images on a plane.

The first option is to create several copies of object, assign to each copy different texture and then in game use Replace Mesh actuator.
The second option is to use Video Texture plug-in to load bitmap images from files and set them as textures to object.

Isn’t There A Method With Python ?

I looked into sources and there are methods GetTexture and SetTexture (KX_BlenderMaterial.h), but they haven’t been implemented yet.