Much, much cleaner.
Added onSuccess and onFailure handling.