Refactor structure
Removed System.out.println calls
Added S3 Persistence layer
Amended output to logger
Amended S3
2-tier (Redis + S3) cached storage