Assuming that you are approaching your software design in a sorta object oriented approach (that is, grouping common functions into one module), it's not uncommon that the structure is rewritten once during a project. I've read some OOP philosphies that the best way to start a project is to write out your object structure, let everyone look at it, then throw it away and design a new one. Nearly the first design is always bad because you don't seen the connections that you need later in the programming.
in reply to Starting a project and landing between a rock and a hard place.
I've done the same with some of my projects. I write enough to see what my mistakes are with my code, then dump it and start again. It's by no means perfect, but that initial "oops" phase can strongly help any software project by ironing out the potental bumps in programming.
Now, if you backing against a deadline and in this situation, it's a bit hard to do that, but I would at least try to find the ones that need dire rewriting and do that, such that other programmers at least see where you are headed.
Dr. Michael K. Neylon - firstname.lastname@example.org
"You've left the lens cap of your mind on again, Pinky" - The Brain