+1, this class can return its status in the Future; spark.dart can worry about translating that do user error messages.