Added argument parser to app.py
Added Caching and more