in reply to Splitting a project into smaller files
...and no list of resources on how to deal with modules would be complete without Intermediate Perl (O'Reilly).
It addresses all of the questions in the OP, and more.
Dave