New file structure - error handling using exceptions