added google analytics
added caching & rate-limiting to server, better error handling to client