in reply to Best way to manage package versions?
Putting code into packages is essential for collaborative development as source control (like git and so on)is. Take the time to make a clear structure/design or even a collaboration diagram how are things working right now and what is actually required.
This way you may finds possible Issues which may come to picture in 6 month and that may be too late for changes. Once I have had to debug my own code written some months ago with quick-hacks where packages are spread over several files. This was quite tough :-) and I could blame myself for. Spend some time for that, it is worth!