Added overwrite functionality

- made version work correctly without needing to specify a template file
- refactored long method slightly... who cares