Removed fetch and replaced with axios (mostly due to simpler syntax, and support for upload progress events). Also added support for custom errors, for failed API calls, failed login, etc... Errors are stateful, and can be dismissed by the user.