you can also put the class/function prototypes at the beginning of the script. Which may be more appropriate than splitting things into separate files for this sized application, easier to share it and for folks to run it then too.