Hi Brandon,
Creating solutions in such a manner I find difficult at best. Though you may no have a choice at times. On the same note, I am a huge fan of application development on the SharePoint platform. However, I recommend a different approach.
Have you considered a pure Web Part approach? Breaking an applcation down into smaller pieces has its advantages:
- Promotes and lends itself to the reuse of those components (Web Parts).
- Allows you to pread the development responsibilities; i.e. more developers can be involved.
- Easier to develop and debug component parts, eliminating many problem areas before assembling the application itself.
If you do have to resort to a holistic application, you may want to consider breaking each section down into controls. Controls have the advantage of being designed, developed and debugged using the visual tools we have come to love so much!