Added a loading gif thing, as well as some onError feedback