Touch typing is well defined, both in terms of what it is mechanically (the use of muscle memory alone) and, commercially, the WPM that a practitioner was expected to achieve.
However, it's become almost irrelevant over time. The days of the need to transcribe large amounts of spoken and written text, and with them typing pools, are all but gone. 100+ wpm aren't important for tasks like programming, since you're not thinking at that speed. Besides, in that specific discipline it's the amount of code that you don't write which is really a mark of your mastery. I assume that the same holds true for most, if not all, 'creative' (rather than simple duplication) tasks.
My approach of the last couple of years, and one which has worked well for me, is to 'cheat'. By which I mean, adapt the keyboard itself to minimise finger and wrist movement over the keyboard for the character set that I use most frequently.
I bought an Ergodox EZ keyboard, and changed the key functionality to suit my particular preferred workflow and methods, which are then quite removed from 'real' touch typing on a Qwerty layout. For example, I no longer use a shift key. Capitals are made by holding the relevant character down for slightly longer than I would for regular, lower case. Brackets of all types are made by double-tapping corresponding keys in the middle row. Other characters that I use regularly in programming, such as the hash and the dollar are programmed to appear on 'spare' keys within easy reach of the middle or bottom row, and hence I avoid the need for shift.
I'm not going to evangelise it, but for me, it's greatly increased the rate at which I can output code, and at a later time in my life in which I expected to be a lot less plastic in terms of new muscle memory.