added caching, improved yql calls, redesigned the layout