Added Private and Public Method functionality
Added Exceptions to demonstrate functional
Added new todos