Started rewriting download class