Replace source ready flag with loading/ready/error enum