Thanks for your ideas.
I liked idea of naming your variables to render the comments useless very much. I don't know that I could always do it, because the names might become very long, but it's a good check to apply.
On the subroutines, I copied a bit of perl off the internet that I liked and it used the double underscore technique. I thought it was a good way of identfying subroutines very quickly and easily. Do you think it creates a problem?