Separated out the classes into separate files.