I have started to put some more work into my POI Utility ColdFusion component, which is exciting, but at the same time, I am afraid it's getting too big. Right now, the POIUtility.cfc ships as a single ColdFusion component, but it is already a very big file. If I start to add more functionality to the same CFC file, it is going to get even bigger and, at almost 2,000 lines of code already, this just doesn't feel like the right strategy. My gut is telling me to break it up into multiple files and make each of those files more cohesive around a single task rather than this general task of reading and writing Excel files.
My gut tells me to avoid creating a God object that can do everything Excel-related under the sun. But then, on the other hand, this is a third-party "product," and I want it to be as easy to install and use as possible. The more files that need to be installed, the higher the complexity of the project and the more likely something will go wrong once it is out of my hands.
Does anyone have any ideas or guidelines that they follow when trying to balance Good programming techniques with ease of packaging and distribution?