Let me just say this philosophical essay changed my way of working: Structured Procrastination
Basically it says that you should put urgent critical tasks at the very top of the list; but ones that would, on closer inspection, not be such a big deal to miss. Then you use those pressing tasks as motivation to actually work on items further down your list, of less importance. As you add even more urgent tasks later, this becomes an effective cycle where all tasks are at some point accomplished, while allowing you to happily ever procrastinate.
Right there with GTD -- embrace it!
Now, what are software implementations of the philosophy? Maybe todo lists that make it easy to put important tasks at the top in huge type, to gently coax you into doing the others down the list. Sure, if the software deliberately acknowledges Structured Procrastination, and if it tries to figure out which tasks you've been procrastinating on for long enough, that's even better.