Refactored project structure
Added exception class hierarchy