1. A user interface for a software application operable to generate a plurality of graphical user interface (GUI) elements, the interface comprising: (a) a hardware surface providing input to the software application, said hardware surface comprising a plurality of spatially distinct points; (b) an overlay removably fittable to said surface; (c) a non-visual cue generated by the software application upon an interaction of a user with at least one of said surface points; and (d) a plurality of tactile representations corresponding to the graphical user interface (GUI) elements, wherein said tactile representations are adjustably positionable upon said overlay.