Aesthetic improvements
  - Move some stuff out of the main file into other files
  - Improve some of the comments