Add download and many major improvements