GlovePIE is a piece of software that allows you to map glove or joystick movements to keyboard presses keyboard presses to (emulated) glove or joystick movements or otherwise make any one input device work as another for the purpose of playing games. Got a game that requires joystick input? No problem. Want to move your Wii Remote and have the mouse cursor move? It's doable. And all of this is done with a simple GlovePIE-exclusive programming language. Plus it's free!
GlovePIE's programming system is simple as can be. Rather than something like C++ codes with brackets galore a GlovePIE script might be as simple as 'W = glove.z > -50 cm' makes it so that moving the glove you're wearing up will trigger the W key. This is interchangeable for many different forms of input including keyboards making it a potential all-in-one replacement for JoyToKey. Making scripts in this way is not difficult as long as you're willing to do a little reading beforehand.
Finally GlovePIE works on many operating systems from Windows 98 on up. Certain features are only available on newer operating systems but anything modern should work like a charm. It also supports tons of different peripherals including basically all that your operating system itself supports (and more). It also causes only a small amount of input lag on newer systems not at all. If you see use for it try it!